当 UserControl 的可见性更改为 Visible 时,我需要更新其上的所有绑定。几乎所有绑定都绑定到用户控件的 DataContext 属性,因此我尝试更新该绑定的目标:
BindingOperations.GetBindingExpressionBase(this, UserControl.DataContextProperty).UpdateTarget();
但我得到null
作为结果GetBindingExpression(..)
方法,我想知道我是否使用了错误的方法。
另外,是否还有其他好方法来刷新控件上的所有绑定(使用 DataContext 作为源)。
好吧,你could只需重新分配DataContext
:
var dataContext = DataContext;
DataContext = null;
DataContext = dataContext;
仅供参考,将属性重置为其值(即DataContext = DataContext
)不会工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)