如何让Expander向上扩展

发布于 2024-07-14 17:35:30 字数 222 浏览 8 评论 0原文

我有一个数据网格和一个扩展器,如下所示:

<Grid>
    ...
    <DataGrid ....>
    <Expander ...>
</Grid>

我希望数据网格尽可能大,扩展器在开始时尽可能小。 当用户单击扩展器时,我希望它向上而不是向下扩展,并让数据网格收缩。

谢谢!

I have a dataGrid and an expander as follows:

<Grid>
    ...
    <DataGrid ....>
    <Expander ...>
</Grid>

I want the datagrid as big as possible and the expander as small as possible at the begining. When a user clicks the expander, I want it to expand upwards instead of downwards, and have the datagrid shrink.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

伤感在游骋 2024-07-21 17:35:30

您可以在Grid中定义行高,然后将扩展器放在最底行,让Grid进行排序。

* - 此高度为一个单位,其中总高度除以单位数并分配。 因此,如果高度为 300 并且有两行 2* 和 *,那么它们将分别为 200 和 100。

自动 - 这是内容的最小高度。

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*" />
        <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>

    <Canvas Grid.Row="0" Background="LightBlue" />
    <Expander Grid.Row="1">
        <Canvas Background="LightGreen" Height="200" />
    </Expander>
</Grid>

You can define the row heights in the Grid, and then put the expander in the bottom row, and let the grid sort it out.

* - This height is one unit, where the total height is divided by the number of units and apportioned out. So if the height was 300 and there were two rows, 2* and *, then they would be 200 and 100 each.

Auto - This is whatever the minimum height of the content is.

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*" />
        <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>

    <Canvas Grid.Row="0" Background="LightBlue" />
    <Expander Grid.Row="1">
        <Canvas Background="LightGreen" Height="200" />
    </Expander>
</Grid>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文