功能更新
This commit is contained in:
98
Melskin/Controls/PropertyField.xaml.cs
Normal file
98
Melskin/Controls/PropertyField.xaml.cs
Normal file
@@ -0,0 +1,98 @@
|
||||
namespace Melskin.Controls;
|
||||
|
||||
/// <summary>
|
||||
/// 带有名称的属性输入
|
||||
/// </summary>
|
||||
public class PropertyField : Control
|
||||
{
|
||||
static PropertyField()
|
||||
{
|
||||
DefaultStyleKeyProperty.OverrideMetadata(typeof(PropertyField),
|
||||
new FrameworkPropertyMetadata(typeof(PropertyField)));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 属性名
|
||||
/// </summary>
|
||||
public string PropertyName
|
||||
{
|
||||
get => (string)GetValue(PropertyNameProperty);
|
||||
set => SetValue(PropertyNameProperty, value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 用于注册属性名的依赖属性。
|
||||
/// </summary>
|
||||
public static readonly DependencyProperty PropertyNameProperty =
|
||||
DependencyProperty.Register(nameof(PropertyName), typeof(string), typeof(PropertyField));
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 属性值
|
||||
/// </summary>
|
||||
public string PropertyValue
|
||||
{
|
||||
get => (string)GetValue(PropertyValueProperty);
|
||||
set => SetValue(PropertyValueProperty, value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置属性的值。
|
||||
/// </summary>
|
||||
public static readonly DependencyProperty PropertyValueProperty =
|
||||
DependencyProperty.Register(nameof(PropertyValue), typeof(string), typeof(PropertyField));
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否只读
|
||||
/// </summary>
|
||||
public bool ReadOnly
|
||||
{
|
||||
get => (bool)GetValue(ReadOnlyProperty);
|
||||
set => SetValue(ReadOnlyProperty, value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置一个值,该值指示属性字段是否为只读。
|
||||
/// </summary>
|
||||
public static readonly DependencyProperty ReadOnlyProperty =
|
||||
DependencyProperty.Register(nameof(ReadOnly), typeof(bool), typeof(PropertyField),
|
||||
new PropertyMetadata(false));
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 名称区域宽度
|
||||
/// </summary>
|
||||
public GridLength NameAreaWidth
|
||||
{
|
||||
get => (GridLength)GetValue(NameAreaWidthProperty);
|
||||
set => SetValue(NameAreaWidthProperty, value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置名称区域的宽度。
|
||||
/// </summary>
|
||||
public static readonly DependencyProperty NameAreaWidthProperty =
|
||||
DependencyProperty.Register(nameof(NameAreaWidth), typeof(GridLength), typeof(PropertyField),
|
||||
new PropertyMetadata(new GridLength(2, GridUnitType.Star)));
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置值区域的宽度。此属性决定了在PropertyField控件中,用于显示属性值部分的列宽。
|
||||
/// </summary>
|
||||
public GridLength ValueAreaWidth
|
||||
{
|
||||
get => (GridLength)GetValue(ValueAreaWidthProperty);
|
||||
set => SetValue(ValueAreaWidthProperty, value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置值区域的宽度。
|
||||
/// </summary>
|
||||
public static readonly DependencyProperty ValueAreaWidthProperty =
|
||||
DependencyProperty.Register(nameof(ValueAreaWidth), typeof(GridLength), typeof(PropertyField),
|
||||
new PropertyMetadata(new GridLength(3, GridUnitType.Star)));
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user