我有一个带有在XAML中定义的RowDefinitions的网格,在转到代码中的快照视图时需要更改它,到目前为止,我只能弄清楚如何通过以下方式删除它们:

RowDefinitionCollection defs = mainGrid.RowDefinitions;
defs.RemoveAt(0);
defs.RemoveAt(0);


本质上,我需要删除快照视图中的所有定义(以上代码有效),但是一旦返回快照,第一行的高度应为140,第二行为“ *”。如何添加具有这些特征的定义?

最佳答案

尝试:

    RowDefinitionCollection defs = myGrid.RowDefinitions;
    defs.Add(new RowDefinition() { Height = new GridLength(140) });
    defs.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });


另外,您可以有两个网格,并仅将Visibility修改为可视状态的一部分,那么您就不会在代码中花费很多繁琐的UI操作。内置的Visual Studio模板使用此技术获取快照。

关于c# - 在C#中删除并添加GridRow定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16196118/

10-09 03:43