其他分享
首页 > 其他分享> > 在WPF中的组合框上的zIndex?

在WPF中的组合框上的zIndex?

作者:互联网

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

<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>

我希望能够在给定的时间显示/隐藏某些组合框.但是,尽管Opacity和IsEnabled可以隐藏/显示,禁用/启用除我选择的组合框之外的每个组合框,但是我无法单击“ yearsCB”下方的组合框,因为它是最后添加的.

这意味着其他两个组合框不接收鼠标事件.

我发现我应该使用其他WPF标签包装组合框,以便在每个组合框上切换ZIndex.

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

还是有其他更好的方法来实现这一目标?

解决方法:

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

Panel.ZIndex="1"

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

在WPF中,您将元素放置在它们的父元素内-在这种情况下,父元素是Grid. Grid classPanel class派生而面板具有ZIndex attached property.

如果要在一个位置中的3个组合框之间切换,则应更改其可见性.如果用户界面中启用了元素,则不透明度仅更改视觉状态,并设置IsEnabled.

对于隐藏的组合框:

Visibility="Hidden"

对于可见的组合框:

Visibility="Visible"

标签:combobox,z-index,wpf,c
来源: https://codeday.me/bug/20191108/2008695.html