using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Mesnac.PlugIn.Pad; using Mesnac.PlugIn.View; using Mesnac.PlugIn.Workbench; using Mesnac.Gui.PlugIn; namespace Mesnac.Gui.Run.Pad { public partial class FrmSysFunction : DefaultPadContent { public FrmSysFunction() { InitializeComponent(); Workbench.WorkbenchSingleton.Workbench.AfterRefreshPlugIn += new EventHandler(Workbench_AfterRefreshPlugIn); //刷新插件事件处理 } /// /// 插件刷新事件处理 /// /// /// private void Workbench_AfterRefreshPlugIn(object sender, EventArgs e) { this.treeView1.Nodes.Clear(); List plugInCollection = sender as List; if (plugInCollection != null && plugInCollection.Count > 0) { foreach (PlugInDescriptor plugIn in plugInCollection) { TreeNode tnFunction = new TreeNode(); tnFunction.Text = plugIn.FunctionName; if (plugIn.ViewContents != null && plugIn.ViewContents.Count > 0) { foreach (IViewContent view in plugIn.ViewContents) { TreeNode tnView = new TreeNode(); tnView.Text = view.TitleName; tnView.Tag = view; tnFunction.Nodes.Add(tnView); } } this.treeView1.Nodes.Add(tnFunction); } } this.treeView1.ExpandAll(); } /// /// 双击树节点事件处理程序 /// /// /// private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e) { IViewContent viewContent = e.Node.Tag as IViewContent; if (viewContent != null) { Workbench.WorkbenchSingleton.Workbench.ShowView(viewContent); } } } }