/// <summary> /// 纯粹子类数据 /// </summary> public bool CreateTreeTable(List <ToolPlugin> list, int rootId, MenuStrip treeMenu, out string error) { bool isSuccessedCreate = false; error = ""; try { ToolPlugin root = list.Where(x => x.Pid == rootId).FirstOrDefault();//一定保证有数据,要不然之后功能实现都会错 if (root != null) { BindMenu(list.OrderBy(x => x.Sort).ToList(), rootId); treeMenu = menuStrip; isSuccessedCreate = true; } } catch (Exception ex) { error += ex.ToString(); } return(isSuccessedCreate); }
/// <summary> /// 添加子菜单 /// </summary> /// <param name="text">要显示的文字,如果为 - 则显示为分割线</param> /// <param name="cms">要添加到的子菜单集合</param> /// <param name="callback">点击时触发的事件</param> /// <returns>生成的子菜单,如果为分隔条则返回null</returns> private ToolStripMenuItem AddContextMenu(string text, ToolStripItemCollection cms, ToolPlugin plugin, EventHandler callback) { if (text == "-") { ToolStripSeparator tsp = new ToolStripSeparator(); cms.Add(tsp); return(null); } else if (!string.IsNullOrEmpty(text)) { ToolStripMenuItem tsmi = new ToolStripMenuItem(text); tsmi.Tag = text + "TAG"; if (!string.IsNullOrEmpty(plugin.Pic)) { try { tsmi.Image = ImageHelper.GetImage(System.Environment.CurrentDirectory + "\\ICon\\" + plugin.Pic); } catch { } } if (callback != null) { tsmi.Click += callback; } cms.Add(tsmi); return(tsmi); } return(null); }