TextBlock.GetBindingExpression返回NULL

8
以下代码对我来说返回了NULL,有什么想法吗?
MultiBinding collectionRange = new MultiBinding();
collectionRange.Bindings.Add(new Binding("CurrentPosition") { Source = View });
collectionRange.Bindings.Add(new Binding("Count") { Source = View });
collectionRange.StringFormat = "{0} of {1}";
tbFooter.SetBinding(TextBlock.TextProperty, collectionRange);
var x = tbFooter.GetBindingExpression(TextBlock.TextProperty);

MultiBinding没问题——属性是有效的,并在UI上呈现。我只是似乎无法获取绑定表达式(x始终为NULL)。

我使用的方法有问题吗?

1个回答

16

这个方法实际上只是一个便捷包装,它包装了BindingOperations.GetBindingExpression方法。GetBindingExpression会将当前实例和dp参数传递给BindingOperations.GetBindingExpression。

如果您的绑定是MultiBinding,请使用BindingOperations.GetMultiBinding。

详见“备注”部分以及“示例”部分中此处的注意事项。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接