From be1239dad10b0aa4a1015e09b94f0aad963d2d14 Mon Sep 17 00:00:00 2001 From: Sunny Date: Wed, 11 Jan 2023 10:56:09 +0800 Subject: [PATCH] =?UTF-8?q?*=20UIFlowLayoutPanel:=20=E5=A2=9E=E5=8A=A0Auto?= =?UTF-8?q?Scroll=E5=B1=9E=E6=80=A7=20*=20UIFlowLayoutPanel:=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E5=8F=AA=E6=98=BE=E7=A4=BA=E6=B0=B4=E5=B9=B3=E6=BB=9A?= =?UTF-8?q?=E5=8A=A8=E6=9D=A1=E6=97=B6=EF=BC=8C=E9=BC=A0=E6=A0=87=E6=BB=9A?= =?UTF-8?q?=E8=BD=AE=E6=BB=9A=E5=8A=A8=E6=B0=B4=E5=B9=B3=E6=BB=9A=E5=8A=A8?= =?UTF-8?q?=E6=9D=A1=E4=B8=8D=E5=8A=A8=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SunnyUI/Controls/UIFlowLayoutPanel.cs | 39 +++++++++++++++++---------- 1 file changed, 25 insertions(+), 14 deletions(-) diff --git a/SunnyUI/Controls/UIFlowLayoutPanel.cs b/SunnyUI/Controls/UIFlowLayoutPanel.cs index 616e275c..8723db10 100644 --- a/SunnyUI/Controls/UIFlowLayoutPanel.cs +++ b/SunnyUI/Controls/UIFlowLayoutPanel.cs @@ -26,6 +26,8 @@ * 2022-11-13: V3.2.8 增加滚动条背景色调整 * 2022-11-13: V3.2.8 删除AddControl、RemoveControl方法 * 2022-11-25: V3.2.9 增加Get方法以获取控件 + * 2023-01-11: V3.3.1 增加AutoScroll属性 + * 2023-01-11: V3.3.1 修复只显示水平滚动条时,鼠标滚轮滚动水平滚动条不动的问题 ******************************************************************************/ using System; @@ -69,6 +71,14 @@ namespace Sunny.UI timer.Start(); } + [DefaultValue(true)] + [Browsable(true)] + public new bool AutoScroll + { + get => Panel.AutoScroll; + set => Panel.AutoScroll = value; + } + private int scrollBarWidth = 0; [DefaultValue(0), Category("SunnyUI"), Description("垂直滚动条宽度,最小为原生滚动条宽度")] @@ -414,22 +424,23 @@ namespace Sunny.UI private void Panel_MouseWheel(object sender, MouseEventArgs e) { - if (e.Delta < 0) - { - if (Panel.VerticalScroll.Maximum > Panel.VerticalScroll.Value + 50) - Panel.VerticalScroll.Value += 50; - else - Panel.VerticalScroll.Value = Panel.VerticalScroll.Maximum; - } - else - { - if (Panel.VerticalScroll.Value > 50) - Panel.VerticalScroll.Value -= 50; - else - Panel.VerticalScroll.Value = 0; - } + //if (e.Delta < 0) + //{ + // if (Panel.VerticalScroll.Maximum > Panel.VerticalScroll.Value + 50) + // Panel.VerticalScroll.Value += 50; + // else + // Panel.VerticalScroll.Value = Panel.VerticalScroll.Maximum; + //} + //else + //{ + // if (Panel.VerticalScroll.Value > 50) + // Panel.VerticalScroll.Value -= 50; + // else + // Panel.VerticalScroll.Value = 0; + //} VBar.Value = Panel.VerticalScroll.Value; + HBar.Value = Panel.HorizontalScroll.Value; } private void VBar_ValueChanged(object sender, EventArgs e)