dragablz TabablzControl 禁用选项卡

dragablz TabablzControl disable tab

您好,我正在使用 dragablz:TabablzControl,我需要禁用一个选项卡,但我不能。

这是我的代码:

<dragablz:TabablzControl
        FixedHeaderCount="4"
        Grid.Row="1"
        Grid.Column="0"
        Grid.ColumnSpan="2"
        BorderThickness="0"
        SelectedIndex="{Binding SelectedTab}">
        <TabItem Header="{Resx ApplicationView_mnuStatus}" IsEnabled="false"  Visibility="Hidden" >
            <views:StatusView>
                <views:StatusView.DataContext>
                    <viewmodels:StatusViewModel />
                </views:StatusView.DataContext>
            </views:StatusView>
        </TabItem>
        <TabItem Header="{Resx ApplicationView_mnuServers}" IsEnabled="false"  Visibility="Hidden" >
            <views:ServersMainView>
                <views:ServersMainView.DataContext>
                    <viewmodels:ServersMainViewModel />
                </views:ServersMainView.DataContext>
            </views:ServersMainView>
        </TabItem>
    </dragablz:TabablzControl>

可见性 = "hidden" 不起作用 isEnabled = "false" 不起作用

请帮忙!谢谢!

Dragablz 不支持禁用选项卡。

为什么?因为在可以将其他选项卡拖到另一个选项卡中的情况下,这没有太大意义 window,而使禁用的选项卡暴露在外。

您应该:

  • 禁用选项卡的内容。
  • 删除要隐藏的选项卡。

您可以简单地删除后面代码中的标签项:

TabablzControl1.Items.Remove(tabitem1);

试试这个:

List<object> ListTabItem = new List<object>();
bool band = false;
foreach (object item in tabcontent.Items){
    if (band == false){
        band = true;
        continue;
    }
    ListTabItem.Add(item);
}

private void VisibleTabs(string cad){
    foreach (object item in ListTabItem){
        tabcontent.Items.Add(item);
    }
}

private void HideTabs(string cad){
    foreach (object item in ListTabItem)
    {
        tabcontent.Items.Remove(item);
    }
}