void tv_webServices_AfterSelect(object sender, TreeViewEventArgs e) { WSNodeType nodeType = (WSNodeType)e.Node.Tag; //when running on mono removing a node fires the select event and causes an exception //checking the action means that we only handle the event on ByMouse action if (e.Action != TreeViewAction.Unknown) { if (nodeType == WSNodeType.WebServiceNode) { //process.Logger.Instance.Log.Info("Start: Node Type WebServiceNode " + e.Node.Name); if (WebServiceClicked != null) { WebServiceClicked(e.Node.Name); } } else if (nodeType == WSNodeType.WebMethodNode) { string webServiceName = e.Node.Parent.Name; //process.Logger.Instance.Log.Info("Start: Node Type WebMethodNode " + webServiceName + " " + e.Node.Name); if (WebMethodClicked != null) { WebMethodClicked(webServiceName, e.Node.Name); } } } }
void Remove() { if (tv_webServices.SelectedNode == null) { return; } WSNodeType nodeType = (WSNodeType)tv_webServices.SelectedNode.Tag; if (nodeType == WSNodeType.WebServiceNode) { //process.Logger.Instance.Log.Info("Start: Node Type WebServiceNode " + tv_webServices.SelectedNode.Name); if (RemoveClicked != null) { RemoveClicked(tv_webServices.SelectedNode.Name); } tv_webServices.SelectedNode.Remove(); } else if (nodeType == WSNodeType.WebMethodNode) { //process.Logger.Instance.Log.Info("Start: Node Type WebMethodNode " + tv_webServices.SelectedNode.Parent.Name); if (RemoveClicked != null) { RemoveClicked(tv_webServices.SelectedNode.Parent.Name); } tv_webServices.SelectedNode.Parent.Remove(); } }