代码之家  ›  专栏  ›  技术社区  ›  Vlad

WPF中ComboBox上的zIndex?

  •  3
  • Vlad  · 技术社区  · 6 年前

    我需要在同一个数据网格单元中有三个组合框,如下所示:

    <Grid Name="gridFormat_1" Grid.Row="1" Grid.Column="6" Margin="0, 5, 5, 5" >
        <Grid.RowDefinitions>
            <RowDefinition/>
        </Grid.RowDefinitions>
    
        <ComboBox Grid.Row="0" Name="monthsCB" DisplayMemberPath="MonthName" IsEnabled="False" Opacity="0" />
        <ComboBox Grid.Row="0" Name="quartalsCB" DisplayMemberPath="QuartalNumber" IsEnabled="False" Opacity="0" />
        <ComboBox Grid.Row="0" Name="yearsCB" DisplayMemberPath="Year" IsEnabled="False" Opacity="0" />
    </Grid>
    

    我希望能够在给定的时间显示/隐藏某些组合框。但是,尽管不透明度和禁用,隐藏/显示,禁用/启用每个组合框,除了我选择的一个,我不能点击“yearsCB”下面的组合框,因为它是最后添加的。

    我发现我应该使用一些其他的WPF标记来包装我的组合框,这样我就可以在每个组合框上切换ZIndex。

    哪个标签会是那个,哪个可以让我操纵Canvas或ZIndex?

    1 回复  |  直到 6 年前
        1
  •  3
  •   Egres    6 年前

    如果需要设置ZIndex,可以使用attribute

    Panel.ZIndex="1"
    

    数字越高,项目越高。默认ZIndex为0。

    Grid class 是从 Panel class ZIndex attached property .

    对于隐藏的组合框:

    Visibility="Hidden"
    

    对于可见组合框:

    Visibility="Visible"