/// <summary> /// Load Form /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void frmMain_Load(object sender, EventArgs e) { //加载到菜单 PlugIn.LoadPlugInMenuItem(plugInToolStripMenuItem); //禁用操作 DisableAllOpr(); //Set Tool bar button enable SetToolBarEnabled(); //Open ConnectionManagement Form Utility.OpenForm(new FrmConnect(), true, true); //多文档管理器的设定 var parentMenuItems = new List <ToolStripMenuItem>(); parentMenuItems.Add(CollectionToolStripMenuItem); parentMenuItems.Add(JavaScriptStripMenuItem); MultiTabManger.Init(tabView, parentMenuItems); //MultiTab固定项目的初始化 var serverStatusCtl = new CtlServerStatus(); serverStatusCtl.IsFixedItem = true; serverStatusCtl.SelectObjectTag = "[ServerStatus]"; serverStatusCtl.BindingMenu = StatusToolStripMenuItem; MultiTabManger.AddView(serverStatusCtl, "Status"); var ctlShellCommandEditor = new CtlJsEditor(); ctlShellCommandEditor.IsFixedItem = true; ctlShellCommandEditor.SelectObjectTag = "[ShellCommand]"; ctlShellCommandEditor.BindingMenu = commandShellToolStripMenuItem; MultiTabManger.AddView(ctlShellCommandEditor, "ShellCommand"); //刷新 RefreshToolStripMenuItem_Click(sender, e); serverStatusCtl.RefreshGui(); MultiTabManger.SelectTab("[ServerStatus]"); //委托设置 trvsrvlst.NodeMouseClick += trvsrvlst_NodeMouseClick; trvsrvlst.NodeMouseDoubleClick += (x, y) => ViewDataObj(); ViewDataToolStripMenuItem.Click += (x, y) => ViewDataObj(); trvsrvlst.KeyDown += trvsrvlst_KeyDown; tabView.SelectedIndexChanged += tabView_SelectedIndexChanged; //CommandHelper.RunCommandComplete += CommandLog; //长时间操作时候,实时提示进度在状态栏中 lblAction.Text = string.Empty; MongoHelper.ActionDone += (x, y) => { //1.lblAction 没有InvokeRequired //2.DoEvents必须 lblAction.Text = y.Message; Application.DoEvents(); }; }
/// <summary> /// Load Form /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void frmMain_Load(object sender, EventArgs e) { //加载到菜单 PlugIn.LoadPlugInMenuItem(plugInToolStripMenuItem); //禁用操作 DisableAllOpr(); //Set Tool bar button enable SetToolBarEnabled(); //Open ConnectionManagement Form UIAssistant.OpenModalForm(new frmConnect(), true, true); //多文档管理器的设定 var parentMenuItems = new List <ToolStripMenuItem> { CollectionToolStripMenuItem, JavaScriptStripMenuItem }; MultiTabManger.Init(tabView, parentMenuItems); //MultiTab固定项目的初始化 var serverStatusCtl = new CtlServerStatus() { IsFixedItem = true, SelectObjectTag = "[ServerStatus]", BindingMenu = StatusToolStripMenuItem }; MultiTabManger.AddView(serverStatusCtl, GuiConfig.IsUseDefaultLanguage ? "Status" : GuiConfig.GetText("MainMenu.MangtStatus"), string.Empty); //刷新 RefreshToolStripMenuItem_Click(sender, e); serverStatusCtl.RefreshGui(); MultiTabManger.SelectTab("[ServerStatus]"); //委托设置 trvsrvlst.NodeMouseClick += trvsrvlst_NodeMouseClick; trvsrvlst.NodeMouseDoubleClick += (x, y) => ViewDataObj(); ViewDataToolStripMenuItem.Click += (x, y) => ViewDataObj(); trvsrvlst.KeyDown += trvsrvlst_KeyDown; tabView.SelectedIndexChanged += tabView_SelectedIndexChanged; //CommandHelper.RunCommandComplete += CommandLog; //长时间操作时候,实时提示进度在状态栏中 lblAction.Text = string.Empty; MongoHelper.ActionDone += (x, y) => { //1.lblAction 没有InvokeRequired //2.DoEvents必须 lblAction.Text = y.Message; Application.DoEvents(); }; if (trvsrvlst.Nodes.Count > 0) { trvsrvlst.SelectedNode = trvsrvlst.Nodes[0]; } }
/// <summary> /// Create a DataView Tab /// </summary> private void ViewDataRecord() { //由于Collection 和 Document 都可以触发这个事件,所以,先把Tag以前的标题头去掉 //Collectiong:XXXX 和 Document:XXXX 都统一成 XXXX var dataKey = RuntimeMongoDbContext.SelectTagData; if (MultiTabManger.IsExist(dataKey)) { MultiTabManger.SelectTab(dataKey); return; } var mDataViewInfo = new DataViewInfo { strCollectionPath = RuntimeMongoDbContext.SelectObjectTag, IsReadOnly = RuntimeMongoDbContext.CurrentMongoConnectionconfig.IsReadOnly, }; CtlDataView dataViewctl; switch (RuntimeMongoDbContext.SelectTagType) { case ConstMgr.GridFileSystemTag: dataViewctl = new CtlGfsView(mDataViewInfo) { AllowDrop = true }; break; case ConstMgr.UserListTag: dataViewctl = new CtlUserView(mDataViewInfo); break; case ConstMgr.ViewTag: mDataViewInfo.IsView = true; dataViewctl = new CtlDocumentView(mDataViewInfo); break; default: dataViewctl = new CtlDocumentView(mDataViewInfo); break; } dataViewctl.mDataViewInfo = mDataViewInfo; dataViewctl.SelectObjectTag = RuntimeMongoDbContext.SelectObjectTag; dataViewctl.ParentMenu = CollectionToolStripMenuItem; var TabTitle = UiHelper.GetShowName(RuntimeMongoDbContext.GetCurrentDataBaseName(), RuntimeMongoDbContext.GetCurrentCollectionName()); MultiTabManger.AddView(dataViewctl, TabTitle, RuntimeMongoDbContext.SelectTagType); }
/// <summary> /// Create a DataView Tab /// </summary> private void ViewDataRecord() { //由于Collection 和 Document 都可以触发这个事件,所以,先把Tag以前的标题头去掉 //Collectiong:XXXX 和 Document:XXXX 都统一成 XXXX var dataKey = RuntimeMongoDbContext.SelectTagData; if (MultiTabManger.IsExist(dataKey)) { MultiTabManger.SelectTab(dataKey); return; } var mDataViewInfo = new DataViewInfo { StrDbTag = RuntimeMongoDbContext.SelectObjectTag, IsUseFilter = false, IsReadOnly = RuntimeMongoDbContext.CurrentMongoConnectionconfig.IsReadOnly, MDataFilter = new DataFilter() }; CtlDataView dataViewctl; switch (RuntimeMongoDbContext.SelectTagType) { case ConstMgr.GridFileSystemTag: dataViewctl = new CtlGfsView(mDataViewInfo); break; case ConstMgr.UserListTag: dataViewctl = new CtlUserView(mDataViewInfo); break; case ConstMgr.ViewTag: mDataViewInfo.IsView = true; dataViewctl = new CtlDocumentView(mDataViewInfo); break; default: dataViewctl = new CtlDocumentView(mDataViewInfo); break; } dataViewctl.MDataViewInfo = mDataViewInfo; dataViewctl.SelectObjectTag = RuntimeMongoDbContext.SelectObjectTag; dataViewctl.ParentMenu = CollectionToolStripMenuItem; MultiTabManger.AddView(dataViewctl, RuntimeMongoDbContext.GetCurrentCollectionName()); }
/// <summary> /// View Js /// </summary> private void ViewJavascript() { var tagArray = RuntimeMongoDbContext.SelectTagData.Split("/".ToCharArray()); var jsName = tagArray[(int)EnumMgr.PathLevel.Document]; if (MultiTabManger.IsExist(RuntimeMongoDbContext.SelectTagData)) { MultiTabManger.SelectTab(RuntimeMongoDbContext.SelectTagData); return; } var jsEditor = new CtlJsEditor { StrDBtag = RuntimeMongoDbContext.SelectObjectTag }; var dataTab = new TabPage(jsName) { Tag = RuntimeMongoDbContext.SelectObjectTag, ImageIndex = 1 }; jsEditor.JsName = jsName; dataTab.Controls.Add(jsEditor); jsEditor.Dock = DockStyle.Fill; tabView.Controls.Add(dataTab); var dataMenuItem = new ToolStripMenuItem(jsName) { Tag = dataTab.Tag, Image = GetSystemIcon.TabViewImage.Images[1] }; JavaScriptStripMenuItem.DropDownItems.Add(dataMenuItem); dataMenuItem.Click += (x, y) => tabView.SelectTab(dataTab); //MultiTabManger.AddTabInfo(RuntimeMongoDbContext.SelectTagData, null, dataTab,string.Empty); jsEditor.CloseTab += (x, y) => { tabView.Controls.Remove(dataTab); //MultiTabManger.RemoveTabInfo(RuntimeMongoDbContext.SelectTagData); JavaScriptStripMenuItem.DropDownItems.Remove(dataMenuItem); }; tabView.SelectTab(dataTab); //} }