依赖项属性-不指定默认值的元数据选项

本文关键字:默认值 元数据 选项 属性 依赖 | 更新日期: 2023-09-27 18:13:24

public double FontSize
{
    get { return (double)GetValue(FontSizeProperty); }
    set { SetValue(FontSizeProperty, value); }
}
public static readonly DependencyProperty FontSizeProperty =
    TextElement.FontSizeProperty.AddOwner(typeof(OutlineTextBlock),
    new FrameworkPropertyMetadata(XXX, FrameworkPropertyMetadataOptions.AffectsRender));

我不想指定XXX,也没有覆盖只指定AffectsRender

如果我这样做

    new FrameworkPropertyMetadata()

then属性将从某处取默认值。

如何指定没有默认值的AffectsRender ?

依赖项属性-不指定默认值的元数据选项

试试下面的

new FrameworkPropertyMetadata { AffectsRender = true; }

通过不指定默认值,基本PropertyMetadata不会被标记为正在修改的默认值。这可以确保在合并元数据时,使用原始的默认值,但添加了AffectsRender标志。