要设置自定义属性,首先需要在 XAML 文件中定义该属性,然后在代码中为该属性赋值。以下是一个简单的示例:
<Window x:Class="CustomPropertyDemo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:CustomPropertyDemo"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Button Content="Click me" local:CustomProperties.MyCustomProperty="Hello, World!" />
</Grid>
</Window>
在这个示例中,我们定义了一个名为 MyCustomProperty
的自定义属性,并将其赋值为 “Hello, World!”。
using System.Windows;
namespace CustomPropertyDemo
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
string customPropertyValue = CustomProperties.GetMyCustomProperty(btn);
MessageBox.Show(customPropertyValue);
}
}
public static class CustomProperties
{
public static readonly DependencyProperty MyCustomPropertyProperty =
DependencyProperty.RegisterAttached("MyCustomProperty", typeof(string), typeof(CustomProperties), new PropertyMetadata(""));
public static void SetMyCustomProperty(UIElement element, string value)
{
element.SetValue(MyCustomPropertyProperty, value);
}
public static string GetMyCustomProperty(UIElement element)
{
return (string)element.GetValue(MyCustomPropertyProperty);
}
}
}
在代码中,我们定义了一个名为 MyCustomPropertyProperty
的依赖属性,然后通过 SetMyCustomProperty
方法为按钮赋予了自定义属性值。在窗口初始化时,我们通过 GetMyCustomProperty
方法获取按钮的自定义属性值,并弹出一个消息框显示该值。
这样,我们就成功地设置了一个自定义属性并为其赋值。