private void ExpandNode(TreeListNode nodeTarget, bool refresh) { if (nodeTarget == null) { return; } if (!refresh && nodeTarget.HasChildren) { return; } nodeTarget.Nodes.Clear(); ICatalogItem catalogItem = nodeTarget.Tag as ICatalogItem; if (!catalogItem.HasChild) { return; } ThreadLoad frmload = new ThreadLoad(); Thread ui = frmload.CreatUIThread("正在加载,请稍候..."); try { List <ICatalogItem> catalogItemList = catalogItem.Childrens; if (catalogItemList == null) { DevExpress.XtraEditors.XtraMessageBox.Show("打开失败"); return; } foreach (ICatalogItem subItem in catalogItemList) { if (subItem == null) { continue; } TreeListNode nodeSub = m_TreeList.AppendNode(new object[] { subItem.Name }, nodeTarget); nodeSub.Tag = subItem; nodeSub.ImageIndex = GetImageIndex(subItem); nodeSub.SelectImageIndex = 18; BandEvent(nodeSub, subItem); //subItem.OnOpen += delegate //{ // ExpandNode(nodeSub, true); //}; //subItem.OnRefresh += delegate //{ // nodeSub.Nodes.Clear(); // if (subItem is IWorkspaceCatalogItem) // { // nodeSub.ImageIndex = 0; // } //}; } nodeTarget.ExpandAll(); // 如果是Workspace,改成连接的图标 if (catalogItem is IWorkspaceCatalogItem) { nodeTarget.ImageIndex = 1; } } catch { } finally { ui.Abort(); } }
private void ExpandNode(TreeListNode nodeTarget,bool refresh) { if (nodeTarget == null) return; if (!refresh && nodeTarget.HasChildren) return; nodeTarget.Nodes.Clear(); ICatalogItem catalogItem = nodeTarget.Tag as ICatalogItem; if (!catalogItem.HasChild) return; ThreadLoad frmload = new ThreadLoad(); Thread ui = frmload.CreatUIThread("正在加载,请稍候..."); try { List<ICatalogItem> catalogItemList = catalogItem.Childrens; if (catalogItemList == null) { DevExpress.XtraEditors.XtraMessageBox.Show("打开失败"); return; } foreach (ICatalogItem subItem in catalogItemList) { if (subItem == null) continue; TreeListNode nodeSub = m_TreeList.AppendNode(new object[] { subItem.Name }, nodeTarget); nodeSub.Tag = subItem; nodeSub.ImageIndex = GetImageIndex(subItem); nodeSub.SelectImageIndex = 18; BandEvent(nodeSub, subItem); //subItem.OnOpen += delegate //{ // ExpandNode(nodeSub, true); //}; //subItem.OnRefresh += delegate //{ // nodeSub.Nodes.Clear(); // if (subItem is IWorkspaceCatalogItem) // { // nodeSub.ImageIndex = 0; // } //}; } nodeTarget.ExpandAll(); // 如果是Workspace,改成连接的图标 if (catalogItem is IWorkspaceCatalogItem) { nodeTarget.ImageIndex = 1; } } catch { } finally { ui.Abort(); } }