删除用户控件及其所有子控件

时间:2020-12-19 22:08:28

标签: c# wpf xaml

我有一个 UserControl,其中包含多个嵌套的其他 UserControl。它们是在 xaml 代码中定义的,每个都有一个 Name 属性,因此我可以通过代码中的属性访问它们。

<UserControl Name="parentControl" ...>
    <local:ChildControl Name="childControl" />
</UserControl>

现在根据 parentControl 的代码,我想销毁所有子控件,因此我想销毁 childControl 及其可能拥有的所有子控件。

我只是尝试设置

childControl = null;

但它的一个子控件仍然可以正常工作(它仍在写入指示其功能状态的日志文件)。我尝试运行 GC.Collect(),但没有任何效果。

我必须这样做(或以类似方式)的原因是我正在使用一个框架来实例化 parentControl 并通过这样做来创建其 UI。我的问题是我的 UI 在达到 EOL 时没有被正确销毁。

1 个答案:

答案 0 :(得分:0)

尝试以下方法

parentControl.Children.Clear();
相关问题