wpf - 是否可以 'refresh' WPF 数据绑定(bind)

标签 wpf data-binding binding refresh

我有一个 xaml TabControl,在一页上,有 3 个 RadioButtons,每个 RadioButtons 绑定(bind)到相邻 ListView 的选定值上的不同属性。在 ListView 中的选定项目之间切换后,我的单选按钮似乎忘记了它们已绑定(bind)并且不刷新。

所以在调试器中观察它,当我切换到一个新的选定项时,我看到非用户代码首先检查所有 3 个属性的值,然后只检查前两个,最后只检查第一个。但是,如果我更改选项卡并改回来,它似乎又给了我一些用途。

绑定(bind)本身相当简单。 bool 属性与 IsChecked 的双向绑定(bind)。它有 4 层深(Path=DataModel.Selected.A.B),但我有其他相同深度的东西可以正常工作。

这是人们听说过并知道可能发生的事情吗?或者,如果绑定(bind)以某种方式被遗忘,有没有办法明确提醒 xaml?

最佳答案

可以像这样手动更新绑定(bind):

TestCheckBox
    .GetBindingExpression(CheckBox.IsCheckedProperty)
    .UpdateTarget();

话虽如此,我没有 100% 的信心认为这会纠正您的根本问题。我以前没有遇到过 WPF 绑定(bind)的此类问题,但我在选项卡控件方面遇到了一些奇怪的问题。

关于wpf - 是否可以 'refresh' WPF 数据绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/656552/

相关文章:

.net - 我可以在代码隐藏中获取样式的键吗? (WPF)

c# - 在文本 block 中使用具有某些属性的 <Run Text={Binding ...}/> 时应用程序崩溃

cocoa - 绑定(bind)和 NSButton

javascript - 如何将私有(private)函数绑定(bind)为回调

wpf - 如何在选中时将焦点设置到 TreeViewItem 中的控件

.net - WPF 数据网格文本列中的绑定(bind)

c# - 如何在空列表框中使用 CTRL+V 启用粘贴?

mvvm - 绑定(bind)到模型以进行属性更改

WPF:从数据上下文对象中获取 DataTemplate 元素

c# - 从代码隐藏添加资源并在 XAML 中使用