优化代码
This commit is contained in:
@@ -26,6 +26,7 @@ using System.Windows.Threading;
|
||||
using Application = System.Windows.Application;
|
||||
using Brushes = System.Windows.Media.Brushes;
|
||||
using Button = System.Windows.Controls.Button;
|
||||
using ComboBox = System.Windows.Controls.ComboBox;
|
||||
using Cursor = System.Windows.Input.Cursor;
|
||||
using Cursors = System.Windows.Input.Cursors;
|
||||
using DpiChangedEventArgs = System.Windows.DpiChangedEventArgs;
|
||||
@@ -328,8 +329,7 @@ namespace Ink_Canvas
|
||||
|
||||
private void inkCanvas_EditingModeChanged(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var inkCanvas1 = sender as InkCanvas;
|
||||
if (inkCanvas1 == null) return;
|
||||
if (!(sender is InkCanvas inkCanvas1)) return;
|
||||
|
||||
// 使用辅助方法设置光标
|
||||
SetCursorBasedOnEditingMode(inkCanvas1);
|
||||
@@ -358,8 +358,7 @@ namespace Ink_Canvas
|
||||
if (inkCanvas1.EditingMode == InkCanvasEditingMode.Ink) forcePointEraser = !forcePointEraser;
|
||||
|
||||
// 处理橡皮擦覆盖层的启用/禁用
|
||||
var eraserOverlay = FindName("EraserOverlayCanvas") as Canvas;
|
||||
if (eraserOverlay != null)
|
||||
if (FindName("EraserOverlayCanvas") is Canvas eraserOverlay)
|
||||
{
|
||||
if (inkCanvas1.EditingMode == InkCanvasEditingMode.EraseByPoint)
|
||||
{
|
||||
@@ -1301,8 +1300,7 @@ namespace Ink_Canvas
|
||||
BorderSettingsMask.Background = new SolidColorBrush(Color.FromArgb(1, 0, 0, 0));
|
||||
|
||||
// 获取SettingsPanelScrollViewer中的所有GroupBox
|
||||
var stackPanel = SettingsPanelScrollViewer.Content as StackPanel;
|
||||
if (stackPanel == null) return;
|
||||
if (!(SettingsPanelScrollViewer.Content is StackPanel stackPanel)) return;
|
||||
|
||||
// 确保所有GroupBox都是可见的
|
||||
foreach (var child in stackPanel.Children)
|
||||
@@ -1517,20 +1515,15 @@ namespace Ink_Canvas
|
||||
// 清除所有导航按钮的Tag属性
|
||||
private void ClearAllNavButtonTags()
|
||||
{
|
||||
var grid = BorderSettings.Child as Grid;
|
||||
if (grid == null) return;
|
||||
if (!(BorderSettings.Child is Grid grid)) return;
|
||||
|
||||
var navSidebar = grid.Children[0] as Border;
|
||||
if (navSidebar == null) return;
|
||||
if (!(grid.Children[0] is Border navSidebar)) return;
|
||||
|
||||
var navGrid = navSidebar.Child as Grid;
|
||||
if (navGrid == null) return;
|
||||
if (!(navSidebar.Child is Grid navGrid)) return;
|
||||
|
||||
var scrollViewer = navGrid.Children[1] as ScrollViewer;
|
||||
if (scrollViewer == null) return;
|
||||
if (!(navGrid.Children[1] is ScrollViewer scrollViewer)) return;
|
||||
|
||||
var stackPanel = scrollViewer.Content as StackPanel;
|
||||
if (stackPanel == null) return;
|
||||
if (!(scrollViewer.Content is StackPanel stackPanel)) return;
|
||||
|
||||
foreach (var child in stackPanel.Children)
|
||||
{
|
||||
@@ -1544,30 +1537,24 @@ namespace Ink_Canvas
|
||||
// 设置导航按钮的Tag属性
|
||||
private void SetNavButtonTag(string tag)
|
||||
{
|
||||
var grid = BorderSettings.Child as Grid;
|
||||
if (grid == null) return;
|
||||
if (!(BorderSettings.Child is Grid grid)) return;
|
||||
|
||||
var navSidebar = grid.Children[0] as Border;
|
||||
if (navSidebar == null) return;
|
||||
if (!(grid.Children[0] is Border navSidebar)) return;
|
||||
|
||||
var navGrid = navSidebar.Child as Grid;
|
||||
if (navGrid == null) return;
|
||||
if (!(navSidebar.Child is Grid navGrid)) return;
|
||||
|
||||
var scrollViewer = navGrid.Children[1] as ScrollViewer;
|
||||
if (scrollViewer == null) return;
|
||||
if (!(navGrid.Children[1] is ScrollViewer scrollViewer)) return;
|
||||
|
||||
var stackPanel = scrollViewer.Content as StackPanel;
|
||||
if (stackPanel == null) return;
|
||||
if (!(scrollViewer.Content is StackPanel stackPanel)) return;
|
||||
|
||||
foreach (var child in stackPanel.Children)
|
||||
{
|
||||
if (child is Button button)
|
||||
{
|
||||
// 检查按钮的ToolTip属性,根据tag设置对应的按钮
|
||||
string buttonTag = button.Tag as string;
|
||||
|
||||
// 如果按钮的Tag与要设置的tag匹配,则设置Tag
|
||||
if (buttonTag != null && buttonTag.ToLower() == tag.ToLower())
|
||||
if (button.Tag is string buttonTag && buttonTag.ToLower() == tag.ToLower())
|
||||
{
|
||||
button.Tag = tag;
|
||||
return;
|
||||
@@ -2546,8 +2533,7 @@ namespace Ink_Canvas
|
||||
try
|
||||
{
|
||||
// 获取滑块的轨道元素
|
||||
var track = slider.Template.FindName("PART_Track", slider) as Track;
|
||||
if (track == null)
|
||||
if (!(slider.Template.FindName("PART_Track", slider) is Track track))
|
||||
{
|
||||
// 如果找不到轨道,使用简单方法
|
||||
UpdateSliderValueFromPosition(slider, position);
|
||||
@@ -2674,8 +2660,7 @@ namespace Ink_Canvas
|
||||
{
|
||||
try
|
||||
{
|
||||
var toggle = sender as ToggleSwitch;
|
||||
if (toggle != null)
|
||||
if (sender is ToggleSwitch toggle)
|
||||
{
|
||||
Settings.ModeSettings.IsPPTOnlyMode = toggle.IsOn;
|
||||
|
||||
@@ -2773,8 +2758,7 @@ namespace Ink_Canvas
|
||||
|
||||
try
|
||||
{
|
||||
System.Windows.Controls.ComboBox comboBox = sender as System.Windows.Controls.ComboBox;
|
||||
if (comboBox != null)
|
||||
if (sender is ComboBox comboBox)
|
||||
{
|
||||
Settings.Appearance.Theme = comboBox.SelectedIndex;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user