标签控件可见性隐藏

jer*_*han 2 wpf tabcontrol

我有3个标签项要实现.程序执行时,我希望用户只能看到tab1并隐藏选项卡2和选项卡3.

程序执行时会发生类似这样的事情:

public Window1()
{   
    InitializeComponent();

    // I need tabs 2 and 3 to be hidden   
}
Run Code Online (Sandbox Code Playgroud)

然后我在选项卡1中有一个按钮.当用户单击此按钮时,选项卡2显示但仍隐藏选项卡3

private void Button1_Click(object sender, RoutedEventArgs e)
{
    tabcontrol1.SelectedIndex = 1;
    //need some code to show tab 2
}
Run Code Online (Sandbox Code Playgroud)

我在选项卡2中有一个按钮来显示选项卡3,然后所有选项卡都可见

private void Button2_Click(object sender, RoutedEventArgs e)
{
    tabcontrol1.SelectedIndex = 2;
    // need some code to show tab 3    
}
Run Code Online (Sandbox Code Playgroud)

我的XAML代码:

<TabControl Name="Tabcontrol1" Margin=" 5" SelectedIndex="0">
    <TabItem Header="Directories">
        <Grid Width="1185" Height="945" Background="White" >
            <Label Height="28" HorizontalAlignment="Right" 
                    Margin="0,0,25,0" Name="label11" VerticalAlignment="Top"  
                    Width="120">Step 1 of 2</Label>
        </Grid>
    </TabItem>
    <TabItem Header="Properties" Opacity="1" Name="Properties">
        <Grid Width="1185" Height="945" Background="White" >
            <Button Height="32" Name="Button1" VerticalAlignment="Bottom" 
                    HorizontalAlignment="Right" Width="82" Click="Button1_Click" 
                    Margin="0,0,41,49">Build</Button>
        </Grid>
    </TabItem>
    <TabItem Header ="Output">
        <Grid Width="1185" Height="945" Background="White">
            <Button Height="32" Name="Button2" VerticalAlignment="Bottom" 
                    HorizontalAlignment="Right" Width="82" Click="Button2_Click" 
                    Margin="0,0,41,49">Build</Button>
        </Grid>
     </TabItem>
</TabControl>
Run Code Online (Sandbox Code Playgroud)

我很困惑,因为我只能选择一个标签:

tabcontrol1.SelectedIndex = 1;
Run Code Online (Sandbox Code Playgroud)

我在思考实施的路线

tabcontrol1.SelectedIndex.Visibility = Hidden;
Run Code Online (Sandbox Code Playgroud)

请指教谢谢.

dec*_*one 6

最初设置Visibility第2和第3个选项卡Collapsed.并且还给它们一个名称,以便能够在后面的代码中访问它们.

<TabItem Name="TabItem2" Header="Properties" Opacity="1" Name="Properties" Visibility="Collapsed">
...
<TabItem Name="TabItem3" Header ="Output" Visibility="Collapsed">
...
Run Code Online (Sandbox Code Playgroud)

并将按钮单击代码更改为以下内容:

private void Button1_Click(object sender, RoutedEventArgs e)
{
    tabcontrol1.SelectedIndex = 1;
    //need some code to show tab 2
    TabItem2.Visibility = Visibility.Visible;
}

private void Button2_Click(object sender, RoutedEventArgs e)
{
    tabcontrol1.SelectedIndex = 2;
    // need some code to show tab 3 
    TabItem3.Visibility = Visibility.Visible;   
}
Run Code Online (Sandbox Code Playgroud)