FrameworkPropertyMetadataOptions.AffectsMeasure 和 FrameworkPropertyMetadataOptions.AffectsRender 在阿瓦隆尼亚
FrameworkPropertyMetadataOptions.AffectsMeasure and FrameworkPropertyMetadataOptions.AffectsRender in Avalonia
将 wpf 下的应用程序移动到 avalonia ui。在传输过程中,我遇到了文档中没有的东西。一般来说,有一段来自 wpf 的代码:
public class BaseLabelElement : UIElement
{
public static readonly DependencyProperty FontFamilyProperty = DependencyProperty.Register(
"FontFamily", typeof(FontFamily), typeof(BaseLabelElement), new FrameworkPropertyMetadata(DefaultFontFamily,
FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender, FontFamilyPropertyChanged));
public FontFamily FontFamily
{
get { return (FontFamily)GetValue(FontFamilyProperty); }
set { SetValue(FontFamilyProperty, value); }
}
}
如何添加对应
的新行为
new FrameworkPropertyMetadata (.., FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender,..)
对于 Avalonia 中的依赖项 属性?
AffectsRender<T>(AvaloniaProperty[]) and AffectsMeasure<T>(AvaloniaProperty[])
class Visual 中的方法。这些方法应该在静态控件构造函数中调用,每个控件 属性 在修改时应该导致重绘。这类似于 WPF 中的 FrameworkPropertyMetadata.AffectsRender 和 AffectsMeasure 标志。
将 wpf 下的应用程序移动到 avalonia ui。在传输过程中,我遇到了文档中没有的东西。一般来说,有一段来自 wpf 的代码:
public class BaseLabelElement : UIElement
{
public static readonly DependencyProperty FontFamilyProperty = DependencyProperty.Register(
"FontFamily", typeof(FontFamily), typeof(BaseLabelElement), new FrameworkPropertyMetadata(DefaultFontFamily,
FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender, FontFamilyPropertyChanged));
public FontFamily FontFamily
{
get { return (FontFamily)GetValue(FontFamilyProperty); }
set { SetValue(FontFamilyProperty, value); }
}
}
如何添加对应
的新行为new FrameworkPropertyMetadata (.., FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender,..)
对于 Avalonia 中的依赖项 属性?
AffectsRender<T>(AvaloniaProperty[]) and AffectsMeasure<T>(AvaloniaProperty[])
class Visual 中的方法。这些方法应该在静态控件构造函数中调用,每个控件 属性 在修改时应该导致重绘。这类似于 WPF 中的 FrameworkPropertyMetadata.AffectsRender 和 AffectsMeasure 标志。