如何通过获取绑定表达式来获取属性

时间:2014-07-14 08:19:12

标签: c# wpf binding

我有一个包含此绑定表达式的xaml

{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsMain}

我想在后面的代码中找到主要字段......

我该怎么做?

感谢。

1 个答案:

答案 0 :(得分:1)

假设你在XAML中有这样的TextBlock:

<TextBlock x:Name="textBlock" Text="{Binding Path=IsMain}"/>

您可以在代码后面获取属性名称,如下所示:

var bindingExpression = BindingOperations.GetBindingExpression(textBlock, 
                            TextBlock.TextProperty);
string propertyName = bindingExpression.ParentBinding.Path.Path;

注意:在您的情况下,将 textBlock 替换为您的控件实例名称和 TextBlock.TextProperty ,使用具有应用绑定的目标DP的Dependency属性。