WPF创建一个滑出面板

时间:2011-06-13 07:49:02

标签: c# wpf

我不知道这在技术上是如何工作的,但我的要求如下。我有一个DataGrid并要将数据输入DataGrid,我希望DataGrid底部的一个面板在按钮点击时滑出,显示输入选项。除了,当面板滑出时,DataGrid也必须垂直调整大小。有人可以说明我如何实现这个目标吗?

2 个答案:

答案 0 :(得分:4)

您可以使用Expander。请查看以下代码段。

 <DockPanel>
        <Expander DockPanel.Dock="Bottom">
            <StackPanel>
                <TextBlock Height="25"></TextBlock>
                <TextBlock Height="25"></TextBlock>
                <TextBlock Height="25"></TextBlock>

            </StackPanel>
        </Expander>
        <Border BorderBrush="LightGreen" BorderThickness="2">
            <DataGrid/>
        </Border>
    </DockPanel >

答案 1 :(得分:3)

您应该可以使用带有2个孩子,网格和面板的 StackPanel 。将面板的初始高度设置为0 。单击按钮后,将高度设置为您需要的高度(例如,MyPanel.Height = 20)。如果需要,您可能希望将网格包装在ScrollViewer中。

<StackPanel Orientation="Vertical">
    <ScrollViewer Height="Auto" VerticalAlignment="Stretch">
        <Grid Height="*" VerticalAlignment="Stretch" />
    </ScrollViewer>
    <ContentControl x:Name="MyPanel" Height="0" />
</StackPanel>

您可能需要尝试使用VerticalAlignment和Height =“Auto”或Height =“0”来获得所需的布局。