首页 > 解决方案 > 扩展文本框位于 WPF 中的其他元素之后

问题描述

这是我第一次用 C# 学习 WPF。所以我有一个文本框,当我点击一个按钮时它会扩展。问题是当我扩展它时,它仍然落后于我的其他元素(文本框等......)

这是文本框的 xml 代码。

<StackPanel Grid.Column="1" Grid.ColumnSpan="4" Grid.Row="3" Grid.RowSpan="5" Panel.ZIndex="0" Visibility="Collapsed" Name="descriptionPanel" Margin="2,0,0,0" Background="White">
            <Border BorderBrush="DarkGray" BorderThickness="1" CornerRadius="5">
                <StackPanel Orientation="Horizontal">
                    <TextBox Name="descriptionTextBoxExtended" 
                     Margin="10,10,10,10" 
                     Style="{StaticResource expandedTextBox}"
                     Text="{Binding Path=Description, Mode=TwoWay, ValidatesOnExceptions=true, NotifyOnValidationError=true, TargetNullValue=''}"                     
                     IsReadOnly="{Binding RelativeSource={RelativeSource AncestorLevel=1,AncestorType=Control}, Path=SecurityLevel2ReadOnly, Mode=OneWay}"
                  />
                    <Button Name="descriptionHide"  Style="{StaticResource MinusButton}"  HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="0,0,10,10" Click="descriptionHide_Click" />
                </StackPanel>
            </Border>
        </StackPanel>

这是C#

private void exDescription_Click(object sender, RoutedEventArgs e)
    {
        descriptionPanel.Visibility = Visibility.Visible;
    }

这是我在单击扩展按钮之前运行它时的样子: 在此处输入图像描述

这就是我扩展文本框时的样子: 在此处输入图像描述

我希望所有突出显示的组件都位于文本框后面。

标签: c#wpftextbox

解决方案


您应该将“descriptionPanel”旁边的其他元素的代码提供给我们,但正如mm8 指出的那样,您的元素似乎不在同一个面板中。


推荐阅读