在我的应用程序中,我从一个对象检索绑定并将其分配给另一个对象。而一些对象则改为使用 MultiBinding 。我想检索一个特定的绑定。我该怎么做?
对于非多重绑定,我使用以下代码:
Label lbl = (Label)sender;
BindingExpression bindingExpression = lbl.GetBindingExpression.(Label.ContentProperty);
Binding parentBinding = bindingExpression.ParentBinding;
path = parentBinding.XPath.ToString();
label.SetBinding(Label.ContentProperty, parentBinding);
答案 0 :(得分:0)
我已经弄清楚了。我无法直接从label获得绑定,但我能够使用 BindingOperations.GetMultiBindingExpression 静态方法来检索 MultiBindingExpression ,然后获得正确的绑定。
以下是代码:
MultiBindingExpression multiBindingExpression = BindingOperations.GetMultiBindingExpression(lbl, Label.ContentProperty);
Binding parentBinding = ((BindingExpression)multiBindingExpression.BindingExpressions[1]).ParentBinding;