C# StackPanel ZIndex不工作
我想实现这样的目标,在垂直方向上有一个可见的边界(“市场摘要”左侧) 我有一个网格,两列(左边是图片、姓名、电子邮件、列表框),右边是其他所有内容)。我试图通过使用Panel.Zindex将左侧列上的StackPanel带到前面来显示边框,但这没有起到任何作用C# StackPanel ZIndex不工作,c#,wpf,C#,Wpf,我想实现这样的目标,在垂直方向上有一个可见的边界(“市场摘要”左侧) 我有一个网格,两列(左边是图片、姓名、电子邮件、列表框),右边是其他所有内容)。我试图通过使用Panel.Zindex将左侧列上的StackPanel带到前面来显示边框,但这没有起到任何作用 <StackPanel Panel.ZIndex="1" Grid.Column="0"> <materialDesign:ColorZone Height="100" Mode="Pri
<StackPanel Panel.ZIndex="1" Grid.Column="0">
<materialDesign:ColorZone Height="100" Mode="PrimaryMid">
<Border Padding="8">
<StackPanel>
<Ellipse HorizontalAlignment="Left" VerticalAlignment="Top" Width="48" Height="48" RenderTransformOrigin="-0.014,0.003" Margin="0,0,104,0">
<Ellipse.Fill>
<ImageBrush ImageSource="RandomPic.jpg" />
</Ellipse.Fill>
</Ellipse>
<TextBlock Text="UsernameX" ></TextBlock>
<TextBlock Text="EmailY" ></TextBlock>
</StackPanel>
</Border>
</materialDesign:ColorZone>
<ListBox Background="#FAFAFA" x:Name="DemoItemsListBox">
<ListBox.Items>
<TextBlock> What's going on</TextBlock>
<TextBlock>What's going on</TextBlock>
<TextBlock>What's going on</TextBlock>
<TextBlock>What's going on</TextBlock>
</ListBox.Items>
</ListBox>
</StackPanel>
<StackPanel Panel.ZIndex="0" Grid.Column="1">
<materialDesign:ColorZone Panel.ZIndex="0" Height="60" Mode="PrimaryMid" />
<!--
<dragablz:TabablzControl BorderBrush="#4CAF50" BorderThickness="0" Height="56" >
<TabItem Header=" Ordre de mission " IsSelected="True">
<TextBlock><Run Text="Hello World"/></TextBlock>
</TabItem>
<TabItem Header="Tab No. 2">
<TextBlock><Run Text="We Have Tearable Tabs!"/></TextBlock>
</TabItem>
</dragablz:TabablzControl>
-->
<ContentControl></ContentControl>
</StackPanel>
发生什么事?
发生什么事?
发生什么事?
发生什么事?
WPF StackPanel没有边框,因此将其放在前面不会出现边框 您必须通过插入一个细列并在其中放置边框或分隔符控件,将自己的控件添加到同一网格列的后面或旁边。如果将其放在同一列中,则可能需要调整StackPanel的边距,以使其不会遮挡边框 i、 e
发生什么事?
发生什么事?
发生什么事?
发生什么事?
您的问题是否不清楚?你想做什么?在StackPanel中设置Zindex并不会因为某些原因将Listbox或ColorZone带到前面。你指的是Zindex为1的第一个StackPanel吗?ColorZone和ListBox是这个StackPanel的孩子。是的,我指的是那个StackPanel。我知道他们是孩子,但我希望他们被带到前面,而不是StackPanel 2(Zindex=0)。所以基本上stackpanel中的任何东西都应该放在前面。我的代码在这种情况下没有意义吗?StackPanel 2在另一个网格列中,不是吗?
<Border Grid.Column="0" BorderThickness="0,0,1,0" BorderBrush="Gray"/>
<StackPanel Grid.Column="0" Margin="0,0,2,0">
<materialDesign:ColorZone Height="100" Mode="PrimaryMid">
<Border Padding="8">
<StackPanel>
<Ellipse HorizontalAlignment="Left" VerticalAlignment="Top" Width="48" Height="48" RenderTransformOrigin="-0.014,0.003" Margin="0,0,104,0">
<Ellipse.Fill>
<ImageBrush ImageSource="RandomPic.jpg" />
</Ellipse.Fill>
</Ellipse>
<TextBlock Text="UsernameX" ></TextBlock>
<TextBlock Text="EmailY" ></TextBlock>
</StackPanel>
</Border>
</materialDesign:ColorZone>
<ListBox Background="#FAFAFA" x:Name="DemoItemsListBox">
<ListBox.Items>
<TextBlock> What's going on</TextBlock>
<TextBlock>What's going on</TextBlock>
<TextBlock>What's going on</TextBlock>
<TextBlock>What's going on</TextBlock>
</ListBox.Items>
</ListBox>
</StackPanel>