根据选定的选项卡更改 Tabcontrol 外部的控件属性

Posted

技术标签:

【中文标题】根据选定的选项卡更改 Tabcontrol 外部的控件属性【英文标题】:Change controls properties outside Tabcontrol based on selected Tab 【发布时间】:2022-01-01 22:04:27 【问题描述】:

我正在 WPF 中使用 tabcontrol。 我希望 tabcontrol 外部的按钮根据某些选择(选择的标签页)更改为下拉按钮(组合框) 感谢您的帮助。

【问题讨论】:

你的问题很不清楚 如果选择的标签页是一个,那么按钮应该是一个单击的按钮,如果选择的标签页是 2,那么按钮应该转换为下拉按钮,让用户可以在点击时选择多个命令。 添加两个控件并根据数据触发器和 tabcontrol 的 selectedindex 切换它们的可见性 你能给一些示例代码吗? 【参考方案1】:

将这两个控件添加到您的布局中,并根据数据触发器和 tabcontrol 的 selectedindex 切换它们的可见性

    <ComboBox>
        <ComboBox.Style>
            <Style TargetType="ComboBox">
                <Setter Property="Visibility" Value="Collapsed"/>
                <Style.Triggers>
                    <DataTrigger Binding="Binding ElementName=yourTabControl, Path=SelectedIndex" Value="0">
                        <Setter Property="Visibility" Value="Visible"/>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </ComboBox.Style>
    </ComboBox>
    <Button>
        <Button.Style>
            <Style TargetType="Button">
                <Setter Property="Visibility" Value="Visible"/>
                <Style.Triggers>
                    <DataTrigger Binding="Binding ElementName=yourTabControl, Path=SelectedIndex" Value="1">
                        <Setter Property="Visibility" Value="Collapsed"/>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </Button.Style>
    </Button>

【讨论】:

谢谢。让我试一试! 如果对您有帮助,请将其标记为其他人找到的答案

以上是关于根据选定的选项卡更改 Tabcontrol 外部的控件属性的主要内容,如果未能解决你的问题,请参考以下文章

如何确保我的 WPF TabControl 在至少包含一个选项卡时始终具有选定的选项卡?

TabControl WPF 问题中与 SelectedItem 的异步绑定

WPF 选项卡控件:如何获取当前选定的选项卡?

选项卡控制器中的两个选定选项卡

在点击事件上更改选定的选项卡

如何通过标签页的名称关闭 tabcontrol 上的标签页