* UIIntegerUpDown: 修复设置Style时按钮颜色不一致

* UIDoubleUpDown: 修复设置Style时按钮颜色不一致
This commit is contained in:
Sunny 2023-12-28 21:47:21 +08:00
parent 90fcb70cb0
commit 9a3c8de7a9
2 changed files with 134 additions and 10 deletions

View File

@ -29,6 +29,7 @@
* 2022-11-12: V3.2.8 MaximumEnabledMinimumEnabledHasMaximumHasMinimum属性 * 2022-11-12: V3.2.8 MaximumEnabledMinimumEnabledHasMaximumHasMinimum属性
* 2023-01-28: V3.3.1 MouseLeave * 2023-01-28: V3.3.1 MouseLeave
* 2023-03-24: V3.3.3 ForbidInput属性使Inputable属性 * 2023-03-24: V3.3.3 ForbidInput属性使Inputable属性
* 2023-12-28: V3.6.2 Style时按钮颜色不一致
******************************************************************************/ ******************************************************************************/
using System; using System;
@ -57,6 +58,9 @@ namespace Sunny.UI
edit.BorderStyle = BorderStyle.None; edit.BorderStyle = BorderStyle.None;
edit.MouseLeave += Edit_Leave; edit.MouseLeave += Edit_Leave;
pnlValue.Paint += PnlValue_Paint; pnlValue.Paint += PnlValue_Paint;
btnAdd.Style = UIStyle.Custom;
btnDec.Style = UIStyle.Custom;
} }
/// <summary> /// <summary>
@ -246,12 +250,70 @@ namespace Sunny.UI
if (Height > UIGlobal.EditorMaxHeight) Height = UIGlobal.EditorMaxHeight; if (Height > UIGlobal.EditorMaxHeight) Height = UIGlobal.EditorMaxHeight;
} }
protected override void AfterSetRectColor(Color color) public override void SetStyleColor(UIBaseStyle uiColor)
{ {
base.AfterSetRectColor(color); base.SetStyleColor(uiColor);
if (btnAdd == null || btnDec == null) return; btnAdd.SetStyleColor(uiColor);
btnAdd.FillColor = btnDec.FillColor = color; btnDec.SetStyleColor(uiColor);
btnAdd.RectColor = btnDec.RectColor = color; pnlValue.SetStyleColor(uiColor);
btnAdd.Invalidate();
btnDec.Invalidate();
pnlValue.Invalidate();
}
/// <summary>
/// 填充颜色,当值为背景色或透明色或空值则不填充
/// </summary>
[Description("填充颜色"), Category("SunnyUI")]
[DefaultValue(typeof(Color), "80, 160, 255")]
public Color ButtonFillColor
{
get => btnAdd.FillColor;
set => btnDec.FillColor = btnAdd.FillColor = value;
}
/// <summary>
/// 鼠标移上时填充颜色
/// </summary>
[DefaultValue(typeof(Color), "115, 179, 255"), Category("SunnyUI")]
[Description("鼠标移上时填充颜色")]
public Color ButtonFillHoverColor
{
get => btnAdd.FillHoverColor;
set => btnDec.RectHoverColor = btnAdd.RectHoverColor = btnDec.FillHoverColor = btnAdd.FillHoverColor = value;
}
/// <summary>
/// 鼠标按下时填充颜色
/// </summary>
[DefaultValue(typeof(Color), "64, 128, 204"), Category("SunnyUI")]
[Description("鼠标按下时填充颜色")]
public Color ButtonFillPressColor
{
get => btnAdd.FillPressColor;
set => btnDec.RectPressColor = btnAdd.RectPressColor = btnDec.FillPressColor = btnAdd.FillPressColor = value;
}
/// <summary>
/// 字体图标颜色
/// </summary>
[Description("图标颜色"), Category("SunnyUI")]
[DefaultValue(typeof(Color), "White")]
public Color ButtonSymbolColor
{
get => btnAdd.SymbolColor;
set => btnDec.SymbolColor = btnAdd.SymbolColor = value;
}
/// <summary>
/// 边框颜色
/// </summary>
[Description("边框颜色"), Category("SunnyUI")]
[DefaultValue(typeof(Color), "80, 160, 255")]
public Color ButtonRectColor
{
get => btnAdd.RectColor;
set => pnlValue.RectColor = btnDec.RectColor = btnAdd.RectColor = value;
} }
protected override void AfterSetFillColor(Color color) protected override void AfterSetFillColor(Color color)

View File

@ -28,6 +28,7 @@
* 2022-11-12: V3.2.8 MaximumEnabledMinimumEnabledHasMaximumHasMinimum属性 * 2022-11-12: V3.2.8 MaximumEnabledMinimumEnabledHasMaximumHasMinimum属性
* 2023-01-28: V3.3.1 MouseLeave * 2023-01-28: V3.3.1 MouseLeave
* 2023-03-24: V3.3.3 ForbidInput属性使Inputable属性 * 2023-03-24: V3.3.3 ForbidInput属性使Inputable属性
* 2023-12-28: V3.6.2 Style时按钮颜色不一致
******************************************************************************/ ******************************************************************************/
using System; using System;
@ -54,6 +55,9 @@ namespace Sunny.UI
edit.BorderStyle = BorderStyle.None; edit.BorderStyle = BorderStyle.None;
edit.MouseLeave += Edit_Leave; edit.MouseLeave += Edit_Leave;
pnlValue.Paint += PnlValue_Paint; pnlValue.Paint += PnlValue_Paint;
btnAdd.Style = UIStyle.Custom;
btnDec.Style = UIStyle.Custom;
} }
/// <summary> /// <summary>
@ -228,12 +232,70 @@ namespace Sunny.UI
if (Height > UIGlobal.EditorMaxHeight) Height = UIGlobal.EditorMaxHeight; if (Height > UIGlobal.EditorMaxHeight) Height = UIGlobal.EditorMaxHeight;
} }
protected override void AfterSetRectColor(Color color) public override void SetStyleColor(UIBaseStyle uiColor)
{ {
base.AfterSetRectColor(color); base.SetStyleColor(uiColor);
if (btnAdd == null || btnDec == null) return; btnAdd.SetStyleColor(uiColor);
btnAdd.FillColor = btnDec.FillColor = color; btnDec.SetStyleColor(uiColor);
btnAdd.RectColor = btnDec.RectColor = color; pnlValue.SetStyleColor(uiColor);
btnAdd.Invalidate();
btnDec.Invalidate();
pnlValue.Invalidate();
}
/// <summary>
/// 填充颜色,当值为背景色或透明色或空值则不填充
/// </summary>
[Description("填充颜色"), Category("SunnyUI")]
[DefaultValue(typeof(Color), "80, 160, 255")]
public Color ButtonFillColor
{
get => btnAdd.FillColor;
set => btnDec.FillColor = btnAdd.FillColor = value;
}
/// <summary>
/// 鼠标移上时填充颜色
/// </summary>
[DefaultValue(typeof(Color), "115, 179, 255"), Category("SunnyUI")]
[Description("鼠标移上时填充颜色")]
public Color ButtonFillHoverColor
{
get => btnAdd.FillHoverColor;
set => btnDec.RectHoverColor = btnAdd.RectHoverColor = btnDec.FillHoverColor = btnAdd.FillHoverColor = value;
}
/// <summary>
/// 鼠标按下时填充颜色
/// </summary>
[DefaultValue(typeof(Color), "64, 128, 204"), Category("SunnyUI")]
[Description("鼠标按下时填充颜色")]
public Color ButtonFillPressColor
{
get => btnAdd.FillPressColor;
set => btnDec.RectPressColor = btnAdd.RectPressColor = btnDec.FillPressColor = btnAdd.FillPressColor = value;
}
/// <summary>
/// 字体图标颜色
/// </summary>
[Description("图标颜色"), Category("SunnyUI")]
[DefaultValue(typeof(Color), "White")]
public Color ButtonSymbolColor
{
get => btnAdd.SymbolColor;
set => btnDec.SymbolColor = btnAdd.SymbolColor = value;
}
/// <summary>
/// 边框颜色
/// </summary>
[Description("边框颜色"), Category("SunnyUI")]
[DefaultValue(typeof(Color), "80, 160, 255")]
public Color ButtonRectColor
{
get => btnAdd.RectColor;
set => pnlValue.RectColor = btnDec.RectColor = btnAdd.RectColor = value;
} }
protected override void AfterSetFillColor(Color color) protected override void AfterSetFillColor(Color color)