如何设置元数据选项而不设置默认值?
答
您可以用对象初始化做到这一点
public static readonly DependencyProperty MyDependencyProperty =
DependencyProperty.Register("MyDependency",
typeof(propertyType),
typeof(ownerType),
new FrameworkPropertyMetadata {
BindsTwoWayByDefault = true,
PropertyChangedCallback = OnPropertyChanged,
... etc ...
});
答
有四个构造函数可用于PropertyMetadata,您可以找到here。你可以使用第三个不带任何默认值的参数。
PropertyMetadata(PropertyChangedCallback)
public static readonly DependencyProperty SomeProperty = DependencyProperty.Register("SomeName", typeof(string), typeof(SomeClass),
new PropertyMetadata(SomeChangedCallback),
SomeValidateCallback);