From ddafd077ed92ccb0490e28e7c9ce8b9262765c54 Mon Sep 17 00:00:00 2001
From: SQc04 <2327412600@qq.com>
Date: Tue, 2 Jul 2024 17:22:37 +0800
Subject: [PATCH] Fixed the bug that the baud rate input field could input
non-integers
---
FSGaryityTool_Win11.csproj | 2 +-
MainWindow.xaml.cs | 2 +-
Package.appxmanifest | 2 +-
Page1.xaml | 2 +-
Page1.xaml.cs | 68 ++++++++++++++++++++--------
Resources/zh_CN/Resource.Designer.cs | 2 +-
Resources/zh_CN/Resource.resx | 2 +-
7 files changed, 56 insertions(+), 24 deletions(-)
diff --git a/FSGaryityTool_Win11.csproj b/FSGaryityTool_Win11.csproj
index 1842b15..bc70101 100644
--- a/FSGaryityTool_Win11.csproj
+++ b/FSGaryityTool_Win11.csproj
@@ -257,7 +257,7 @@
- 0.2.34
+ 0.2.35
diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs
index 9e8248d..3e26577 100644
--- a/MainWindow.xaml.cs
+++ b/MainWindow.xaml.cs
@@ -61,7 +61,7 @@ namespace FSGaryityTool_Win11
public sealed partial class MainWindow : Window
{
- public static string FSSoftVersion = "0.2.34";
+ public static string FSSoftVersion = "0.2.35";
public static int FsPage = 0;
public static bool defWindowBackGround = true;
public static TomlTable settingstomlSp;
diff --git a/Package.appxmanifest b/Package.appxmanifest
index 30ee7e6..e65fe4c 100644
--- a/Package.appxmanifest
+++ b/Package.appxmanifest
@@ -9,7 +9,7 @@
+ Version="0.2.35.0" />
FSGaryityTool
diff --git a/Page1.xaml b/Page1.xaml
index b468a53..6740f63 100644
--- a/Page1.xaml
+++ b/Page1.xaml
@@ -80,7 +80,7 @@
BAUDRATE
-
+
diff --git a/Page1.xaml.cs b/Page1.xaml.cs
index 5057913..36875d4 100644
--- a/Page1.xaml.cs
+++ b/Page1.xaml.cs
@@ -55,6 +55,7 @@
using Microsoft.Windows.ApplicationModel.Resources;
using FSGaryityTool_Win11.McuToolpage;
using System.Timers;
+using System.Text.RegularExpressions;
// To learn more about WinUI, the WinUI project structure,
@@ -927,18 +928,37 @@ private void COMButtonIcon_Rotation(object name)
}
- private void Settings_ColorValuesChanged(Windows.UI.ViewManagement.UISettings sender, object args)
+ private void OnThemeChanged(DependencyObject sender, DependencyProperty dp)
{
- var color = sender.GetColorValue(Windows.UI.ViewManagement.UIColorType.Accent);
- CONTButton.Background = new SolidColorBrush(color);
+ var darkaccentColor = (Windows.UI.Color)Application.Current.Resources["SystemAccentColorLight2"];
+ var ligtaccentColor = (Windows.UI.Color)Application.Current.Resources["SystemAccentColorDark1"];
+ // 当主题改变时,此函数会被调用
+ var theme = Application.Current.RequestedTheme;
+
+ if (Con == 1)
+ {
+ if (theme == ApplicationTheme.Dark) //设置连接按钮背景颜色
+ {
+ // 当前处于深色模式
+ CONTButton.Background = new SolidColorBrush(darkaccentColor);
+ CONTButton.Foreground = new SolidColorBrush(Colors.Black);
+ }
+ else if (theme == ApplicationTheme.Light)
+ {
+ // 当前处于浅色模式
+ CONTButton.Background = new SolidColorBrush(ligtaccentColor);
+ CONTButton.Foreground = new SolidColorBrush(Colors.White);
+ }
+ }
}
+
+
private void CONTButton_Click(object sender, RoutedEventArgs e)
{
var settings = new Windows.UI.ViewManagement.UISettings();
var color = settings.GetColorValue(Windows.UI.ViewManagement.UIColorType.Accent);
-
var foregroundColor = COMButton.Foreground as SolidColorBrush;
var backgroundColor = COMButton.Background as SolidColorBrush;
var darkaccentColor = (Windows.UI.Color)Application.Current.Resources["SystemAccentColorLight2"];
@@ -946,8 +966,6 @@ private void CONTButton_Click(object sender, RoutedEventArgs e)
var theme = Application.Current.RequestedTheme;
- settings.ColorValuesChanged += Settings_ColorValuesChanged;
-
// 获取当前窗口的句柄
if (Con == 0)
@@ -1525,28 +1543,42 @@ private void RXTextBox_TextChanged(object sender, TextChangedEventArgs e)
}
private void BANDComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
- if (autosaveset == 1)
+ // 检查输入的是否为数字
+ if (!int.TryParse((string)BANDComboBox.SelectedItem, out int baudRate) || baudRate == 0)
{
+ // 如果输入的不是数字,使用设置文件中的数字覆盖它
using (StreamReader reader = File.OpenText(FSSetToml)) //打开TOML文件
{
settingstomlr = TOML.Parse(reader);
-
- settingstomlr["SerialPortSettings"]["DefaultBAUD"] = (string)BANDComboBox.SelectedItem;
+ BANDComboBox.SelectedItem = ((Tommy.TomlString)settingstomlr["SerialPortSettings"]["DefaultBAUD"]).Value;
}
+ }
+ else
+ {
+ if (autosaveset == 1)
+ {
+ using (StreamReader reader = File.OpenText(FSSetToml)) //打开TOML文件
+ {
+ settingstomlr = TOML.Parse(reader);
- using (StreamWriter writer = File.CreateText(FSSetToml)) //将设置写入TOML文件
+ settingstomlr["SerialPortSettings"]["DefaultBAUD"] = (string)BANDComboBox.SelectedItem;
+ }
+
+ using (StreamWriter writer = File.CreateText(FSSetToml)) //将设置写入TOML文件
+ {
+ settingstomlr.WriteTo(writer);
+ writer.Flush();
+ }
+ }
+ if (Con == 1)
{
- settingstomlr.WriteTo(writer);
- writer.Flush();
+ CommonRes._serialPort.BaudRate = Convert.ToInt32(BANDComboBox.SelectedItem);
+ RXTextBox.Text = RXTextBox.Text + "BaudRate = " + Convert.ToInt32(BANDComboBox.SelectedItem) + "\r\n";
}
+ baudrate = Convert.ToInt32(BANDComboBox.SelectedItem);
}
- if (Con == 1)
- {
- CommonRes._serialPort.BaudRate = Convert.ToInt32(BANDComboBox.SelectedItem);
- RXTextBox.Text = RXTextBox.Text + "BaudRate = " + Convert.ToInt32(BANDComboBox.SelectedItem) + "\r\n";
- }
- baudrate = Convert.ToInt32(BANDComboBox.SelectedItem);
}
+
private void PARComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (autosaveset == 1)
diff --git a/Resources/zh_CN/Resource.Designer.cs b/Resources/zh_CN/Resource.Designer.cs
index 5c6f9f6..f461a8c 100644
--- a/Resources/zh_CN/Resource.Designer.cs
+++ b/Resources/zh_CN/Resource.Designer.cs
@@ -61,7 +61,7 @@ internal Resource() {
}
///
- /// 查找类似 基础亚克力 的本地化字符串。
+ /// 查找类似 亚克力 的本地化字符串。
///
internal static string _base {
get {
diff --git a/Resources/zh_CN/Resource.resx b/Resources/zh_CN/Resource.resx
index 06b9197..9e5b11c 100644
--- a/Resources/zh_CN/Resource.resx
+++ b/Resources/zh_CN/Resource.resx
@@ -142,7 +142,7 @@
Settings Page text
- 基础亚克力
+ 亚克力
Settings Page text