WPF如何动态移除控件

时间:2025-04-17 17:36:45

文章目录

    • 一、概述
    • 二、示例
    • 三、补充

一、概述

总的来说,WPF的控件分为好几种,需要根据实际情况来删除。
如果是Border中的copy控件要被删除,需要将设置为null——因为Border这类控件内部只能容纳一个内嵌控件。而如果是Grid/StackPanel/DockPanel/Canvas等面板,因为这类控件内部可以同时嵌入多个子级控件,因此,要删除其中的子级控件得用类似()或RemoveAt()这类的办法。同时,TabControl之类的Item容器则需要调用此类的()或RemoveAt()之类的方法才能删除一个Tab页。
总之,当我们要删除某个控件,需要先看看它在什么样的容器控件中,然后调用相应的方法。

二、示例

我在Canvas里,动态移除一个Border的泛型,代码如下:

container.Children.Remove(fList[0]);

三、补充

关于泛型的认识,请查看本人另一篇博文:C#中List用法,必知必会!