设计器触发的属性更改检测
> >在运行时设置ISCLASE属性的值时,onisclosedChanged()方法是根据预期的。但是,当设计师在XAML中设置该属性时,该方法仍未符合要求。这是因为在XAML或其他非放松上下文中设置的依赖关系属性绕过Setter方法。
要解决此问题,您可以在属性元数据中注册属性ChangangedCallback。此回调允许您指定一个自定义行为,以执行属性的值。
>public static readonly DependencyProperty IsClosedProperty = DependencyProperty.Register( "IsClosed", typeof(bool), typeof(GroupBox), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender, (o, e) => ((GroupBox)o).OnIsClosedChanged()));
>此代码创建一个名为isclosed property的新的依赖项属性,并注册属性元数据回调,该属性执行OnisClosedClosedChanged()方法当属性值更改时。通过此更改,运行时和XAML属性更新都会触发所需的行为,以确保您的UI响应适当。
以上是为什么在 XAML 中设置我的依赖属性的 Setter 时不触发?的详细内容。更多信息请关注PHP中文网其他相关文章!