我在 SCSF 项目中工作,并TabWorkSpace
使用以下代码添加了多个视图:
ControlledWorkItem<MyController> controller;
controller = WorkItem.Items.AddNew<ControlledWorkItem<MyController>>();
controller.Controller.Run(WorkItem.Workspaces[WorkspaceNames.RightWorkspace]);
controller.Activate();
当我单击它时我有一个按钮,它将使用以下代码关闭所有打开的选项卡:
foreach (var item in WorkItem.RootWorkItem.Workspaces[WorkspaceNames.RightWorkspace].SmartParts)
{
itemToclose = (UserControl)item;
if (itemToclose.InvokeRequired)
{
itemToclose.Invoke(new MethodInvoker(delegate
{
WorkItem.RootWorkItem.Workspaces[WorkspaceNames.RightWorkspace].Close(itemToclose);
}));
}
}
单击该按钮后,所有智能部件都将关闭,但仍会在 Items 集合中找到。
如何在项目集合中删除这些智能部件?