检查绑定属性是否存在

发布于 2024-11-23 23:23:01 字数 420 浏览 1 评论 0原文

我遇到的情况是,有一个通用控件在应用程序中的几个地方使用。

现在,我在属性 A 上有一个数据触发器。即

DataTrigger Binding={Binding A} .......

现在视图模型中可能不存在属性 A,在这种情况下我需要基于属性 B 添加另一个触发器(该触发器存在于该 ViewModel 中)。

像:

Multidatatrigger

DataTrigger Binding A - doesn't exist
DataTrigger Binding B  

做点什么......

有人可以建议我应该如何处理这个问题。 。好像我尝试这样做,那么将抛出绑定异常,因为当前视图模型中不存在 A 。或者任何其他方法都可以在这里工作...... 谢谢

I've a situation in which there is a common control which is used couple of places in application.

Now in this i've a data trigger on a property say A. i.e.

DataTrigger Binding={Binding A} .......

Now it may be possible that property A doesn't exist in view model, in that case i need to add another trigger based on property B (which exist in that ViewModel).

Something like:

Multidatatrigger

DataTrigger Binding A - doesn't exist
DataTrigger Binding B  

Do something.....

Can someone suggest me how i should approach for this. . As if i try to do as such then binding exception will be thrown because A doesn't exist in current View Model. Or any other approach would work here...
Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

终止放荡 2024-11-30 23:23:01

您可以使用 优先级绑定

<DataTrigger Value="XXX">
  <DataTrigger.Binding>
     <PriorityBinding>
        <Binding Path="A"/>
        <Binding Path="B"/>
     </PriorityBinding>
  </DataTrigger.Binding>
  <Setter ...
</DataTrigger>

You can make use of PriorityBinding.

<DataTrigger Value="XXX">
  <DataTrigger.Binding>
     <PriorityBinding>
        <Binding Path="A"/>
        <Binding Path="B"/>
     </PriorityBinding>
  </DataTrigger.Binding>
  <Setter ...
</DataTrigger>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文