如何解决动态绑定到任何选项卡控件-WPF
我正在尝试设置视图网格的最大宽度,但是我希望能够将此视图放置在任何选项卡控件中的任何位置,因为网格的宽度由其内部的选项卡控件确定。我不想通过名称指定特定的选项卡控件,因为我希望它可以与任何选项卡控件一起使用。
有人知道我如何更改以下XAML代码吗?这是在WeUserControl
视图中
<Grid.MaxWidth>
<MultiBinding Converter="{StaticResource WeMaxWidthConverter}">
<Binding ElementName="mainWindowTabControl" Path="ActualWidth"/>
</MultiBinding>
</Grid.MaxWidth>
在使用它的情况下,它实际上只是:
<views:WeUserControl Grid.Column="0" Grid.Row="1" />
,并且封装在标签控件中,在这种情况下称为mainWindowTabControl
解决方法
如果您在返回返回对TabControl
的引用的父窗口中添加名为“ TabControl”的公共属性,则应该可以从任何子元素像这样绑定它的窗口:
<Binding Path="TabControl.ActualWidth"
RelativeSource="{RelativeSource FindAncestor,AncestorType={x:Type Window}}" />
,
这只是您要查找的tab控件,网格将在此可视树中。
相对源绑定为:
<Binding Path="ActualWidth"
RelativeSource="{RelativeSource AncestorType={x:Type TabControl}}" />
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。