WPF如何删除网格?

时间:2013-03-29 11:49:51

标签: c# wpf grid removeall

在我的WPF应用程序中,我创建并添加了一个新的Grid,我已经知道如何从中删除所有子项:

    private void ClrScr()
    {
        for (int i = GridName.Children.Count - 1; i >= 0; i--)
        {
            GridName.Children.RemoveAt(i);
        }
    }

但我不知道如何杀死网格本身,我的尝试:

        GridName.Exit/Disable/Something; /// <--- no Idea what am I doing...
        this.Controls["GridName"].DIEEEE;

可悲的是我失败了......我是WPF的新手,我主要玩WinForms ......帮忙?

2 个答案:

答案 0 :(得分:1)

您可以使用它的父级删除网格。

例如:如果您在名为grid1的停靠面板控件中有三个名为grid2grid3main的网格,则可以删除这些网格是这样的:

main.Children.Remove(this.grid1);
main.Children.Remove(this.grid2);
main.Children.Remove(this.grid3);

答案 1 :(得分:0)

WPF中的所有控件都有父表单除外。如果你要删除的Grid是第一个,那么你可以这样做:

var parent = myGrid.Parent;
Window window = parent as Window;
if(window!=null)
    window.Content = null;

有时Grid可能是没有Content属性的控件的子代。如果它没有内容,那么它必须包含ChildrenItems