From e9095e332c94dbc6bdd3d9ab2ad831c5238aef2c Mon Sep 17 00:00:00 2001 From: noberumotto Date: Sun, 26 Dec 2021 06:59:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E2=80=9CToggle=E2=80=9D?= =?UTF-8?q?=E6=8E=A7=E4=BB=B6=E6=98=BE=E7=A4=BAbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- UI/Controls/Toggle/Toggle.cs | 8 ++------ UI/Themes/Toggle/Toggle.xaml | 15 +++++++++++++-- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/UI/Controls/Toggle/Toggle.cs b/UI/Controls/Toggle/Toggle.cs index 84d2cc5..18ac8fa 100644 --- a/UI/Controls/Toggle/Toggle.cs +++ b/UI/Controls/Toggle/Toggle.cs @@ -23,10 +23,7 @@ namespace UI.Controls.Toggle private static void OnIsCheckedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { var control = d as Toggle; - if (e.OldValue != e.NewValue) - { - control.Text = control.IsChecked ? control.OnText : control.OffText; - } + VisualStateManager.GoToState(control, control.IsChecked ? "On" : "Off", true); } @@ -50,7 +47,7 @@ namespace UI.Controls.Toggle set { SetValue(TextProperty, value); } } public static readonly DependencyProperty TextProperty = - DependencyProperty.Register("Text", typeof(string), typeof(Toggle), new PropertyMetadata("关")); + DependencyProperty.Register("Text", typeof(string), typeof(Toggle)); public Toggle() { @@ -66,7 +63,6 @@ namespace UI.Controls.Toggle base.OnMouseLeftButtonUp(e); IsChecked = !IsChecked; ToggleChanged?.Invoke(this, EventArgs.Empty); - VisualStateManager.GoToState(this, IsChecked ? "On" : "Off", true); } } } diff --git a/UI/Themes/Toggle/Toggle.xaml b/UI/Themes/Toggle/Toggle.xaml index 0d8d2c6..8bb8b9f 100644 --- a/UI/Themes/Toggle/Toggle.xaml +++ b/UI/Themes/Toggle/Toggle.xaml @@ -24,7 +24,9 @@ - + + + @@ -60,6 +62,8 @@ Storyboard.TargetName="Mark"> + @@ -67,7 +71,14 @@ - + + + + + + + + -- GitLab