如何查找和访问绑定到 XAML 中的对象的元素?
编辑:假设我有一个EmployeeViewModel
分配给EmployeeView
'sDataContext
和 aEmployeeModel
在我的内部EmployeeViewModel
,我想知道我的模型的哪些属性绑定到 View 的框架元素(控件)我还想访问绑定到我的模型属性的每个控件.
如何查找和访问绑定到 XAML 中的对象的元素?
编辑:假设我有一个EmployeeViewModel
分配给EmployeeView
'sDataContext
和 aEmployeeModel
在我的内部EmployeeViewModel
,我想知道我的模型的哪些属性绑定到 View 的框架元素(控件)我还想访问绑定到我的模型属性的每个控件.
您可以使用反射循环遍历属性并在每个属性上使用 FrameworkElement.GetBindingExpression 来为给定的框架元素构建其所有绑定。
http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.getbindingexpression
更新:鉴于 SaberAmani 澄清的问题是他正试图向他的模型添加验证并显示验证摘要..请参阅下面的链接。
http://msdn.microsoft.com/en-us/magazine/ff714593.aspx
http://codeblitz.wordpress.com/2009/05/12/wpf-validation-summary-control/
http://wpfvalidation.codeplex.com/
http://f10andf11.blogspot.co.uk/2012/02/wpf-validation-summary-control.html
供想要发现绑定的人参考:
您没有提及您的 XAML 是在 WPF、Silverlight、Metro 还是 Phone7 中(因此您可以做的事情可能会受到更多限制)。
似乎有几种可能的方法可以做你想做的事:
看看这个链接。
他使用反射并建议这是执行此操作的经典方式......但也提到 MarkupWriter 作为另一种可能性。注意:反射方法不会发现可能有绑定的附加属性。
以下是一些使用 MarkupWriter 的链接...这将允许您发现附加的属性。
相关链接: