Files
Shrlalgo.RvKits/Melskin/Controls/Decorations/EmbossBorder.xaml.cs

69 lines
2.1 KiB
C#
Raw Normal View History

2026-01-02 17:30:41 +08:00
namespace Melskin.Controls.Decorations;
2025-08-12 23:08:54 +08:00
/// <summary>
/// 浮雕边框
/// </summary>
public class EmbossBorder : DecorationBase
{
static EmbossBorder()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(EmbossBorder),
new FrameworkPropertyMetadata(typeof(EmbossBorder)));
}
/// <summary>
/// 获取或设置边框圆角的半径。
/// </summary>
public CornerRadius CornerRadius
{
get => (CornerRadius)GetValue(CornerRadiusProperty);
set => SetValue(CornerRadiusProperty, value);
}
/// <summary>
/// 高亮部分的画刷
/// </summary>
public SolidColorBrush LightShadowBrush
{
get => (SolidColorBrush)GetValue(LightShadowBrushProperty);
set => SetValue(LightShadowBrushProperty, value);
}
/// <summary>
/// 阴影部分的画刷
/// </summary>
public SolidColorBrush DarkShadowBrush
{
get => (SolidColorBrush)GetValue(DarkShadowBrushProperty);
set => SetValue(DarkShadowBrushProperty, value);
}
#region Dependency Properties
2025-08-20 12:10:13 +08:00
/// <summary>
/// 表示边框圆角半径的依赖属性。
/// </summary>
2025-08-12 23:08:54 +08:00
public static readonly DependencyProperty CornerRadiusProperty =
DependencyProperty.Register(nameof(CornerRadius),
typeof(CornerRadius), typeof(EmbossBorder),
new PropertyMetadata(new CornerRadius(4)));
2025-08-20 12:10:13 +08:00
/// <summary>
/// 获取或设置用于浮雕边框的浅色阴影画刷。
/// </summary>
2025-08-12 23:08:54 +08:00
public static readonly DependencyProperty LightShadowBrushProperty =
DependencyProperty.Register(nameof(LightShadowBrush),
typeof(SolidColorBrush), typeof(EmbossBorder),
new PropertyMetadata(Brushes.WhiteSmoke));
2025-08-20 12:10:13 +08:00
/// <summary>
/// 获取或设置用于浮雕边框的深色阴影画刷。
/// </summary>
2025-08-12 23:08:54 +08:00
public static readonly DependencyProperty DarkShadowBrushProperty =
DependencyProperty.Register(nameof(DarkShadowBrush),
typeof(SolidColorBrush), typeof(EmbossBorder),
new PropertyMetadata(Brushes.DarkGray));
#endregion
}