[英]I am creating a dependency property whose type is Window. Could someone tell me which FrameworkPropertyMetadataOptions flag I need to use
I am trying to figure out which FrameworkPropertyMetadataOptions flag to use for Window type.我试图找出用于 Window 类型的FrameworkPropertyMetadataOptions标志。
public static readonly DependencyProperty RootWindowProperty;公共 static 只读 DependencyProperty RootWindowProperty;
static VideoPlayer() { FrameworkPropertyMetadata metadata = new FrameworkPropertyMetadata(new Window(), ...); static VideoPlayer() { FrameworkPropertyMetadata 元数据 = new FrameworkPropertyMetadata(new Window(), ...); // I don't know which flags to use here RootWindowProperty = DependencyProperty.Register( "RootWindow", typeof(Window), typeof(VideoPlayer), metadata);
// 我不知道这里使用哪些标志 RootWindowProperty = DependencyProperty.Register( "RootWindow", typeof(Window), typeof(VideoPlayer), metadata);
} }
Note, that it is best practice to use field initializers (inline) instead of static constructors (see example below).请注意,最好使用字段初始值设定项(内联)而不是 static 构造函数(参见下面的示例)。
The runtime is able to optimize the performance of types that don't have an explicitly defined static constructor.运行时能够优化没有明确定义的 static 构造函数的类型的性能。
You don't have to set any meta data flags:您不必设置任何元数据标志:
class VideoPlayer : DependencyObject
{
public static readonly DependencyProperty RootWindowProperty = DependencyProperty.Register(
"RootWindow",
typeof(Window),
typeof(VideoPlayer),
new PropertyMetadata(default));
public Window RootWindow
{
get => (Window)GetValue(RootWindowProperty);
set => SetValue(RootWindowProperty, value);
}
}
See Microsoft Docs: Custom Dependency Properties to learn about Setting Appropriate Metadata Flags .请参阅Microsoft Docs:自定义依赖属性以了解设置适当的元数据标志。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.