1

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

    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...帮助?

4

2 回答 2

1

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

例如:如果您有三个名为 的网格grid1grid2并且grid3在名为 的停靠面板控件main中,您可以像这样删除这些网格:

main.Children.Remove(this.grid1);
main.Children.Remove(this.grid2);
main.Children.Remove(this.grid3);
于 2013-03-29T11:52:18.993 回答
0

WPF 中的所有控件都有父级,但窗体除外。如果Grid您要删除的是第一个,那么您可以这样做:

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

有时 Grid 可以是没有Content属性的控件的子控件。如果它没有 Content 那么它必须有Childrenor Items

于 2013-03-29T12:15:22.273 回答