C# 删除和添加C中的GridRow定义#

C# 删除和添加C中的GridRow定义#,c#,xaml,windows-8,C#,Xaml,Windows 8,我有一个在XAML中定义了行定义的网格,在代码中转到快照视图时需要对其进行更改,到目前为止,我只能通过以下方式找到如何删除它们: RowDefinitionCollection defs = mainGrid.RowDefinitions; defs.RemoveAt(0); defs.RemoveAt(0); 基本上,我需要删除快照视图中的所有定义(上面的代码可以工作),但在返回快照视图后,需要使第一行的高度为140,第二行的高度为“*”。如何添加具有这些特征的定义?试试: RowD

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

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) });
或者,您可以有两个网格,只需将可见性作为可视状态的一部分进行修改,这样就不会在代码中引入大量繁琐的UI操作。内置Visual Studio模板将此技术用于快照视图。

请尝试:

    RowDefinitionCollection defs = myGrid.RowDefinitions;
    defs.Add(new RowDefinition() { Height = new GridLength(140) });
    defs.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });
或者,您可以有两个网格,只需将可见性作为可视状态的一部分进行修改,这样就不会在代码中引入大量繁琐的UI操作。内置的Visual Studio模板将此技术用于快照视图。

简单

RowDefinitionCollection rdc = mainGrid.RowDefinitions;

rdc.Clear();

rdc.Add(new RowDefinition() { Height = new GridLength(140) });
rdc.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star) });
简单地

myGrid.Children.Clear()

删除所有子控件

myGrid.Children.Clear()

删除所有子控件