gpt4 book ai didi

c# - 获取绑定(bind)的父级

转载 作者:太空宇宙 更新时间:2023-11-03 13:23:15 25 4
gpt4 key购买 nike

我有一个 Binding 对象,我想知道这个 Binding 的父对象。

例子:

<Label Name="BindingLabel" Content="{Binding Path=LabelText}"/>

在示例中,Binding 的父级是 Label,名称为 BindingLabel,我搜索仅从 Binding 获取它的方法> 对象。

谢谢!

最佳答案

A Binding可以用在多个对象上,所以它不能有一个Parent。如果您知道您正在查看哪些对象(例如,您已经有一个列表,或者您可以遍历一棵树)以及要检查哪些依赖属性,您可以检查该元素是否使用该绑定(bind)。

如果您拥有所使用的 Binding 的确切实例,那么您可以这样做:

Binding binding = // whatever (must be the same instance used in the object)
IEnumerable<Label> labels = // whatever
foreach (var label in labels)
{
if (label.GetBindingExpression(Label.ContentProperty).ParentBinding
== binding)
{
// found it!
}
}

或者你可能只是想比较路径:

var path = "LabelText";
IEnumerable<Label> labels = // whatever
foreach (var label in labels)
{
if (label.GetBindingExpression(Label.ContentProperty).ParentBinding.Path.Path
== path)
{
// found it!
}
}

关于c# - 获取绑定(bind)的父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23391060/

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