我有一个带网格的控件。
网格有三列,可以处于以下状态之一
这是唯一可能的三种状态。
我可以使用以下方法“关闭”列:
private void CloseColumnB()
{
ColumnB.Width = new GridLength(0);
}
我可以用这个打开一个专栏:
private void OpenColumnB()
{
ColumnB.Width = new GridLength(1, GridUnitType.Star);
}
除了现在要求使用网格分割器以便用户可以根据需要调整列的大小时,这种方法很好用。所以我使用了XAML:
<GridSplitter Grid.Column="0" HorizontalAlignment="Right" Width="3" Background="White"/>
<GridSplitter Grid.Column="1" HorizontalAlignment="Right" Width="3" Background="White"/>
这成功地允许我调整控件的大小。
无论其
当我调整网格大小时,然后关闭其中一列并尝试重新打开它,第二列和第三列被挤压到网格的最右侧,这意味着唯一可见的列是A列和B列和C列仅通过网格分割器最右侧的白线可见。
我想要的是让用户能够调整列的大小,但是当列打开时,它们会重置为默认大小(即2列=每半一半)
我希望这是有道理的,如果有人能提供帮助,我会非常感激。