场景如下,由于我(非常)不熟悉实际处理我的资源,我不完全确定它是否适用于我的示例。这里是为了演示而真正简化的基本场景:
我有一个用户控件MyUserControl,其中包含一个scrollViewer. 此外,我有一个MyClass包含 agrid和 a的类,tabItem并且 UI 有 a tabControl,并且在某些时候,所有内容都将按如下方式连接MainWindow:
List<MyClass> list = new List<MyClass>();
private void SomeMethod(TabItem tabItem)
{
MyUserControl uc = new MyUserControl();
MyClass mc = new MyClass();
list.Add(mc);
mc.tabItem = tabItem;
tabItem.Content = uc;
uc.scrollViewer.Content = mc.grid;
tabControl.Items.Add(tabItem);
tabControl.SelectedItem = tabItem;
}
现在在某个时候,我想再次删除 tabItem 并且我想释放资源,uc但我不一定会mc从list. 删除tabItem和tabControl设置是否足够mc.tabItem = null?