gpt4 book ai didi

xaml - 重置由 GridSplitter 完成的调整大小

转载 作者:行者123 更新时间:2023-12-02 02:55:18 34 4
gpt4 key购买 nike

我正在使用 Microsoft.Toolkit.Uwp.UI.Controls 中的 GridSplitter。在用户使用网格拆分器调整两列大小后,是否有办法重置调整大小并使网格的列宽恢复到调整大小之前的正常宽度?

背景故事:

我有一个页面,在网格中显示两个彼此相邻的用户控件。我在它们之间使用 gridsplitter 以允许用户调整列的大小。

基于其他交互,显示在网格中的用户控件会发生变化。当我“导航”(即更改网格中的用户控件)时,我想将列宽重置为其原始值(在我的情况下,它们以 * 和 2* 开头,因此我希望将列重置回 1/3和 2/3s 大小)。

重置网格列宽的最佳方法是什么?

最佳答案

如果你给你的列名:

<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition x:Name="Column1" Width="*"/>
<ColumnDefinition x:Name="Column2" Width="2*"/>
</Grid.ColumnDefinitions>
<!-- ... -->
</Grid>

您可以在代码隐藏中设置一个命令或事件:
Column1.Width = new GridLength(1, GridUnitType.Star);
Column2.Width = new GridLength(2, GridUnitType.Star);

这将重置列宽,GridSplitter 将继续工作。

我在这里假设您已将 GridSplitter 放在同一列中,并且正在使用 BaseOnAlignment 调整大小行为,就像在 Toolkit 示例应用程序中所做的那样。

关于xaml - 重置由 GridSplitter 完成的调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49788501/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com