using DevExpress.XtraEditors; using DevExpress.XtraTreeList; using Gs.DevApp.Entity; using Gs.DevApp.ToolBox; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Gs.DevApp { public partial class XtraForm1 : DevExpress.XtraEditors.XtraForm { public XtraForm1() { InitializeComponent(); tlMenu.ContextMenuStrip = contextMenuStrip1; getTree(); } /// /// 读取列表 /// private void getTree() { var pgq = new PageQueryModel(1, 999999, "a.type_memo"); var json = JsonConvert.SerializeObject(pgq); try { var strReturn = UtilityHelper.HttpPost("", "MesDefectTypeManager/GetListPage", json); var dd = UtilityHelper.ReturnToTablePage(strReturn); var dt = dd.rtnData.list; tlMenu.DataSource = dt; tlMenu.KeyFieldName = "guid"; tlMenu.ParentFieldName = "upGuid"; tlMenu.Tag = "typeMemo"; tlMenu.EndUpdate(); this.tlMenu.CollapseAll(); tlMenu.OptionsBehavior.Editable = true; tlMenu.OptionsBehavior.AllowRecursiveNodeChecking = false; } catch (Exception ex) { MsgHelper.Warning("提示:" + ex.Message); } } private void tlMenu_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { var hitInfo = tlMenu.CalcHitInfo(new Point(e.X, e.Y)); if (hitInfo.HitInfoType == HitInfoType.Cell) { tlMenu.FocusedNode = hitInfo.Node; contextMenuStrip1.Show(tlMenu, e.Location); } } } private void toolStripMenuItem1_Click(object sender, EventArgs e) { if (tlMenu.FocusedNode != null) { // 删除节点的逻辑 tlMenu.DeleteNode(tlMenu.FocusedNode); } } private void toolStripMenuItem2_Click(object sender, EventArgs e) { if (tlMenu.FocusedNode != null) { // 修改节点的逻辑,例如更改节点值 tlMenu.FocusedNode.SetValue("列名", "新值"); // 替换"列名"和"新值"为实际列名和值 } } } }