void OnDeleteNVLClick(object sender, EventArgs e) { NodeVL nvl = (NodeVL)(sender as ToolStripItem).Tag; if (nvl.Defined) { nvl.OnDeleteSuccess += OnDeletedSuccess; ctrl.DeleteNVL(nvl); } else { (nvl.Tag as TreeNode).Tag = null; (nvl.Tag as TreeNode).Remove(); nvl.Tag = null; nvl.Remove(); } }
void OnDeletedSuccess(object sender, EventArgs e) { if (treeViewIed.InvokeRequired) { OnDirectoryCallback d = new OnDirectoryCallback(OnDeletedSuccess); if (!this.Disposing) { this.Invoke(d, new object[] { sender, e }); } } else { // Propagated from SCSM after! delete acknowledged! NodeVL nvl = (sender as NodeVL); if (nvl.Tag != null) { (nvl.Tag as TreeNode).Tag = null; (nvl.Tag as TreeNode).Remove(); } nvl.Tag = null; nvl.Defined = false; nvl.Remove(); } }