diff --git a/SunnyUI.Demo/Controls/FButton.resx b/SunnyUI.Demo/Controls/FButton.resx index 3ea6cbca..eaa39c0c 100644 --- a/SunnyUI.Demo/Controls/FButton.resx +++ b/SunnyUI.Demo/Controls/FButton.resx @@ -120,6 +120,9 @@ 17, 17 + + 17, 17 + 52 diff --git a/SunnyUI/Controls/UIButton.cs b/SunnyUI/Controls/UIButton.cs index f78e4ed0..bdc66394 100644 --- a/SunnyUI/Controls/UIButton.cs +++ b/SunnyUI/Controls/UIButton.cs @@ -77,27 +77,6 @@ namespace Sunny.UI base.OnClick(e); } - private bool useDoubleClick = false; - - [Description("是否启用双击事件"), Category("SunnyUI")] - [DefaultValue(false)] - public bool UseDoubleClick - { - get - { - return useDoubleClick; - } - set - { - if (useDoubleClick != value) - { - useDoubleClick = value; - SetStyle(ControlStyles.StandardDoubleClick, value); - Invalidate(); - } - } - } - private bool showTips = false; [Description("是否显示角标"), Category("SunnyUI")] diff --git a/SunnyUI/Controls/UICheckBox.cs b/SunnyUI/Controls/UICheckBox.cs index e23a1e0d..1645d260 100644 --- a/SunnyUI/Controls/UICheckBox.cs +++ b/SunnyUI/Controls/UICheckBox.cs @@ -41,6 +41,7 @@ namespace Sunny.UI Size = new Size(150, 29); foreColor = UIStyles.Blue.CheckBoxForeColor; fillColor = UIStyles.Blue.CheckBoxColor; + SetStyle(ControlStyles.StandardDoubleClick, UseDoubleClick); } public delegate void OnValueChanged(object sender, bool value); diff --git a/SunnyUI/Controls/UIControl.cs b/SunnyUI/Controls/UIControl.cs index ded48a83..674948a7 100644 --- a/SunnyUI/Controls/UIControl.cs +++ b/SunnyUI/Controls/UIControl.cs @@ -266,6 +266,27 @@ namespace Sunny.UI } } + private bool useDoubleClick = false; + + [Description("是否启用双击事件"), Category("SunnyUI")] + [DefaultValue(false)] + public bool UseDoubleClick + { + get + { + return useDoubleClick; + } + set + { + if (useDoubleClick != value) + { + useDoubleClick = value; + //SetStyle(ControlStyles.StandardDoubleClick, useDoubleClick); + //Invalidate(); + } + } + } + /// /// OnPaint /// diff --git a/SunnyUI/Controls/UIImageListBox.cs b/SunnyUI/Controls/UIImageListBox.cs index de7b6e8f..32af1cc4 100644 --- a/SunnyUI/Controls/UIImageListBox.cs +++ b/SunnyUI/Controls/UIImageListBox.cs @@ -398,7 +398,7 @@ namespace Sunny.UI else if (e.Delta < -10) { int nposnum = si.nPos + temp * SystemInformation.MouseWheelScrollLines; - ScrollBarInfo.SetScrollValue(Handle, nposnum <= si.nMax ? nposnum : si.nMax); + ScrollBarInfo.SetScrollValue(Handle, nposnum <= si.ScrollMax ? nposnum : si.ScrollMax); } } diff --git a/SunnyUI/Controls/UISwitch.cs b/SunnyUI/Controls/UISwitch.cs index d68c24e6..e667f3d5 100644 --- a/SunnyUI/Controls/UISwitch.cs +++ b/SunnyUI/Controls/UISwitch.cs @@ -143,6 +143,19 @@ namespace Sunny.UI Active = !Active; } + protected override void OnDoubleClick(EventArgs e) + { + if (!UseDoubleClick) + { + base.OnClick(e); + Active = !Active; + } + else + { + base.OnDoubleClick(e); + } + } + public override void SetStyleColor(UIBaseStyle uiColor) { base.SetStyleColor(uiColor);