当 UserControl 的可见性更改为 Visible 时,我需要更新其上的所有绑定(bind)。几乎我所有的绑定(bind)都绑定(bind)到用户控件的 DataContext 属性,所以我正在尝试更新该绑定(bind)的目标:
BindingOperations.GetBindingExpressionBase(this, UserControl.DataContextProperty).UpdateTarget();
但我得到
null
作为 GetBindingExpression(..)
的结果方法,我想知道我是否用错了。此外,是否有任何其他好方法来刷新控件上的所有绑定(bind)(使用 DataContext 作为源)。
最佳答案
好吧,您可以重新分配 DataContext
:
var dataContext = DataContext;
DataContext = null;
DataContext = dataContext;
仅供引用,将属性重置为其值(即
DataContext = DataContext
)将不起作用。
关于wpf - 一次更新 UserControl 中的所有绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/794370/