如何在 XAML 中绑定选项卡项的选定属性

本文关键字:属性 选项 XAML 绑定 | 更新日期: 2023-09-27 18:34:37

我的mainwindow.xaml上有 5 个选项卡。每个选项卡上都有一个按钮。单击按钮时,我必须将视图更改为下一个选项卡。

我是否可以通过将TabItem的属性IsSelected绑定到我以前的按钮命令属性(我正在使用命令启用/禁用按钮(在 xaml 本身中执行此操作(更改按钮单击时的选项卡(?

我的CanExecute将检查按钮的IsEnabled属性。

我可以通过更改SelectedTabIndexSelectedTabItem在后面的代码中执行此操作。但是我可以在 xaml 中执行此操作以遵循 MVVM 模式吗?

如果我的问题不是有效的问题,请忽略它。

注意:我的标签页不是来自模板。

如何在 XAML 中绑定选项卡项的选定属性

使用以下 TabControl Style

<Style TargetType="TabControl">
        <Setter Property="SelectedIndex" Value="{Binding SelectedIndex}"/>
</Style>

将相同的Command绑定到所有按钮,并在每次单击时不断递增ViewModel中的SelectedIndex属性。

视图中的属性模型:

private int selectedIndex;
public int SelectedIndex
{
    get { return selectedIndex; }
    set { selectedIndex = value;
    UpdateProperty("SelectedIndex");
    }
}

命令操作:

SelectedIndex++;
if (SelectedIndex == 5)
{
    SelectedIndex = 0;
}

检查SelectedIndex = 5原因,因为您的选项卡是固定的。否则,您必须在属性 ViewModel 中绑定项目计数,然后进行检查。