public override void OnClick() { if (_hook == null) { return; } if (_hook.MainUserControl == null) { return; } if (!File.Exists(ModDBOperate._QueryConfigXmlPath)) { return; } //读取配置文件信息 XmlDocument pXmlDoc = new XmlDocument(); pXmlDoc.Load(ModDBOperate._QueryConfigXmlPath); string strSearch = "//LoadDataConfig/LoadItem[@ItemText='927ZT']/NodeItem"; XmlNode pXmlnode = pXmlDoc.SelectSingleNode(strSearch); if (pXmlnode == null) { return; } //获取节点的NodeKey string strNodeKey = pXmlnode.Attributes["NodeKey"].Value; pXmlDoc = null; GeoLayerTreeLib.LayerManager.UcDataLib pLayerTree = _hook.LayerTree as GeoLayerTreeLib.LayerManager.UcDataLib; DevComponents.AdvTree.Node pNode = pLayerTree.GetNodeByNodeKey(strNodeKey); //changed by chulili 20111118 加载或卸载指定NodeKey下面的数据 if (base._Checked == false) //按钮先前未被按下 { pNode.SetChecked(true, DevComponents.AdvTree.eTreeAction.Mouse); //加载数据 if (pNode.Checked) //若数据被正确加载 { base._Checked = true; //按钮置于按下状态 } } else //按钮先前是按下的状态 { pNode.SetChecked(false, DevComponents.AdvTree.eTreeAction.Mouse); //卸载数据 if (!pNode.Checked) //若数据被成功卸载 { base._Checked = false; //按钮置于非按下状态 } } ////调用函数,加载该节点内容 //UserControlSMPD pUserControl = _hook.MainUserControl as UserControlSMPD; //if (pUserControl != null) //{ // pUserControl.AddDataDir(strNodeKey); //} }