gpt4 book ai didi

wpf - 依赖属性设置优先级 : CodeBehind vs. XAML

转载 作者:行者123 更新时间:2023-12-04 06:54:20 24 4
gpt4 key购买 nike

当我从代码初始化控件属性时,绑定(bind)到 XAML 上定义的同一属性不起作用。为什么?

例如,我在启动时使用以下语句设置控件属性:

myControl.SetValue(UIElement.VisibilityProperty, DefaultProp.Visibility);
myControl.SetValue(UIElement.IsEnabledProperty, DefaultProp.IsEnabled);

在 xaml 上,我以这种方式绑定(bind) myControl 的属性:
 IsEnabled="{Binding Path=IsKeyControlEnabled}"

现在,当属性“IsKeyControlEnabled”更改为 false 时,myControl 保持启用状态(因为它使用 true 值初始化)。

我能怎么做?

最佳答案

这是正确的行为 - 这是设计使然。显式分配的值会覆盖通过数据绑定(bind)获得的值。 WPF 绑定(bind)消除了显式引用 UI 对象及其属性的需要。要设置属性的值,只需更改它绑定(bind)到的值 - 在您的情况下:

IsKeyControlEnabled = DefaultProp.IsEnabled;

关于wpf - 依赖属性设置优先级 : CodeBehind vs. XAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2729651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com