internal void LoadGlobalView(string pluginTypeName, string parameters) { MessageBox.Show("12"); Type typPluginType = Function.GetType(pluginTypeName); GlobalPluginType _PluginType = base.Application.GetGlobalPluginType(typPluginType); if (parameters != null && parameters.Length > 1) { List <ParameterValue> lstParameterValues = new List <ParameterValue>(); string[] strParameters = parameters.Split(new char[] { '\t' }, StringSplitOptions.RemoveEmptyEntries); for (int intIndex = 0; intIndex < strParameters.Length; intIndex += 2) { if (strParameters.Length >= intIndex + 2) { ParameterValue _ParameterValue = new ParameterValue(); _ParameterValue.Type = Function.GetType(strParameters[intIndex]); if (_ParameterValue.Type != null) { _ParameterValue.Value = strParameters[intIndex + 1]; lstParameterValues.Add(_ParameterValue); } } } this.Application.LoadView(_PluginType, lstParameterValues.ToArray()); } else { this.Application.LoadView(_PluginType); } }
//全局菜单 //全局工具栏 //设备菜单 //设备属性 //设备分类 //设备高级属性 //设备高级分类 //添加一个全局HTML功能项,并加到全局菜单或全局工具栏中 //自定义全局菜单项、全局工具栏项 //菜单 //工具栏 //视图窗口 //状态栏 #region << 视图 >> /// <summary> /// 加载指定插件类型的全局视图,如果视图已加载则将该视图置于可见状态。 /// </summary> /// <param name="globalPluginType">实现 IGlobalPlugin 接口的插件类。</param> /// <param name="parameterValues">需要为该界面插件设置的参数默认值,如无参数可不设置。</param> /// <returns></returns> public GlobalPluginView LoadView(Type globalPluginType, params ParameterValue[] parameterValues) { GlobalPluginType pluginType = base.GetGlobalPluginType(this.CurrentAccount, globalPluginType, new Type[] { typeof(System.Windows.Forms.Control), typeof(System.Windows.Forms.ToolStripItem) }); if (pluginType != null) { return(this.LoadView(pluginType, parameterValues)); } else { throw new Exception("未发现可用的全局插件“" + globalPluginType + "”"); } }
/// <summary> /// 加载指定插件类型的全局视图,如果视图已加载则将该视图置于可见状态。 /// </summary> /// <param name="pluginType">全局插件类型。</param> /// <param name="parameterValues">需要为该界面插件设置的参数默认值,如无参数可不设置。</param> /// <returns>成功加载至界面中的全局视图。</returns> public GlobalPluginView LoadView(GlobalPluginType pluginType, params ParameterValue[] parameterValues) { GlobalPluginView view = null; foreach (ViewBase v in this.Views) { if (v is GlobalPluginView) { GlobalPluginView dv = v as GlobalPluginView; if (dv.PluginType.Equals(pluginType)) { view = v as GlobalPluginView; break; } } } if (view == null) { view = new GlobalPluginView(this, pluginType); if (parameterValues != null && parameterValues.Length > 0) { view.SetParameterValue(parameterValues); } this.Views.Load(view, ViewDockOptions.Center); } else { if (parameterValues != null && parameterValues.Length > 0) { view.SetParameterValue(parameterValues); } view.Focus(); } return(view); }