/// <summary> /// Fill Server Status to treeview /// </summary> /// <param name="trvSvrStatus"></param> public static void FillSrvStatusToList(TreeViewColumns trvSvrStatus) { List <BsonDocument> SrvDocList = new List <BsonDocument>(); foreach (String mongoSvrKey in _mongoConnSvrLst.Keys) { try { MongoServer mongoSvr = _mongoConnSvrLst[mongoSvrKey]; if (!SystemManager.GetCurrentServerConfig(mongoSvrKey).Health) { continue; } //flydreamer提供的代码 //感谢 魏琼东 的Bug信息,一些命令必须以Admin执行 if (SystemManager.GetCurrentServerConfig(mongoSvrKey).LoginAsAdmin) { BsonDocument ServerStatusDoc = ExecuteMongoSvrCommand(serverStatus_Command, mongoSvr).Response; SrvDocList.Add(ServerStatusDoc); } } catch (Exception ex) { throw ex; } } FillDataToTreeView("Server Status", trvSvrStatus, SrvDocList, 0); //打开第一层 foreach (TreeNode item in trvSvrStatus.DatatreeView.Nodes) { item.Expand(); } }
/// <summary> /// 将数据放入TreeView里进行展示 /// </summary> /// <param name="collectionName"></param> /// <param name="trvData"></param> /// <param name="dataList"></param> public static void FillDataToTreeView(String collectionName, TreeViewColumns trvData, BsonDocument dataList) { List <BsonDocument> DocList = new List <BsonDocument>(); DocList.Add(dataList); FillDataToTreeView(collectionName, trvData, DocList, 0); }
public FormTree(Control parentCntrl) { this._name = ""; this._visible = true; this._enabled = true; this._title = ""; this._parent = null; this._parentControl = parentCntrl; this._methodName = ""; this._thisScript = null; this._methodNameDblClick = ""; this._thisScriptDblClick = null; this._methodOnChoice = ""; this._scriptOnChoice = null; _dataTable = new DataTableProvider(); _item = new TreeViewColumns(); _nodesMap = new Dictionary <TreeNode, ValueTreeRow>(); //# Создаем контейнер для элемента формы _panelMainContainer = new Panel(); _panelTitleContainer = new Panel(); _panelControlContainer = new Panel(); _panelMainContainer.Controls.Add(_panelControlContainer); _panelMainContainer.Controls.Add(_panelTitleContainer); _panelMainContainer.Dock = DockStyle.Top; _panelMainContainer.MinimumSize = new Size(150, 22); _panelMainContainer.AutoSize = true; _panelMainContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink; _panelTitleContainer.Dock = DockStyle.Left; _panelTitleContainer.MinimumSize = new Size(50, 21); _panelTitleContainer.AutoSize = true; _panelTitleContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink; _label = new Label(); _panelTitleContainer.Controls.Add(_label); _label.AutoSize = true; _label.Dock = DockStyle.Fill; //# Установка параметров панели для поля с данными _panelControlContainer.Dock = DockStyle.Fill; _panelControlContainer.MinimumSize = new Size(100, 21); _panelControlContainer.AutoSize = true; _panelControlContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink; this._parentControl.Controls.Add(_panelMainContainer); _panelMainContainer.BringToFront(); this.createFormFieldByType(); }
/// <summary> /// </summary> /// <param name="RootName"></param> /// <param name="doc"></param> /// <param name="IsOpen"></param> /// <returns></returns> public static String ConvertBsonTozTreeJson(String RootName, BsonDocument doc, Boolean IsOpen) { var trvStatus = new TreeViewColumns(); MongoDbHelper.FillDataToTreeView(RootName, trvStatus, doc); if (IsOpen) { trvStatus.TreeView.Nodes[0].Expand(); } return(ConvertTreeViewTozTreeJson(trvStatus.TreeView)); }
public static String ConvertBsonTozTreeJson(String RootName, BsonDocument doc, Boolean IsOpen) { TreeViewColumns trvStatus = new TreeViewColumns(); List <BsonDocument> datalist = new List <BsonDocument>(); datalist.Add(doc); MongoDBHelper.FillDataToTreeView(RootName, trvStatus, datalist, 0); if (IsOpen) { trvStatus.TreeView.Nodes[0].Expand(); } return(ConvertTreeViewTozTreeJson(trvStatus.TreeView)); }
/// <summary> /// /// </summary> /// <returns></returns> public static String GetCollectionzTreeJSON() { //获得数据 WebDataViewInfo.LimitCnt = 100; List <BsonDocument> dataList = GetDataList(ref WebDataViewInfo); String collectionName = SystemManager.GetTagData(WebDataViewInfo.strDBTag).Split("/".ToCharArray())[(int)MongoDBHelper.PathLv.CollectionLV]; int SkipCnt = WebDataViewInfo.SkipCnt; TreeViewColumns tree = new TreeViewColumns(); FillDataToTreeView(collectionName, tree, dataList, WebDataViewInfo.SkipCnt); BsonArray array = new BsonArray(); foreach (TreeNode item in tree.TreeView.Nodes) { array.Add(ConvertTreeNodeTozTreeBsonDoc(item)); } return(array.ToJson(SystemManager.JsonWriterSettings));; }
/// <summary> /// 将数据放入TreeView里进行展示 /// </summary> /// <param name="collectionName"></param> /// <param name="trvData"></param> /// <param name="dataList"></param> public static void FillDataToTreeView(String collectionName, TreeViewColumns trvData, List <BsonDocument> dataList, int mSkip) { trvData.DatatreeView.BeginUpdate(); trvData.DatatreeView.Nodes.Clear(); int SkipCnt = mSkip; int Count = 1; foreach (BsonDocument item in dataList) { TreeNode dataNode = new TreeNode(collectionName + "[" + (SkipCnt + Count).ToString() + "]"); //这里保存真实的主Key数据,删除的时候使用 switch (collectionName) { case COLLECTION_NAME_GFS_FILES: dataNode.Tag = item.GetElement(1).Value; break; case COLLECTION_NAME_USER: dataNode.Tag = item.GetElement(1).Value; break; default: //SelectDocId属性的设置, //2012/03/19 不一定id是在第一位 //这里是为了操作顶层节点的删除,修改用的,所以必须要放item.GetElement(0).Value; BsonElement id; item.TryGetElement(KEY_ID, out id); if (id != null) { dataNode.Tag = id.Value; } else { dataNode.Tag = item.GetElement(0).Value; } break; } AddBsonDocToTreeNode(dataNode, item); trvData.DatatreeView.Nodes.Add(dataNode); Count++; } trvData.DatatreeView.EndUpdate(); }
public FormTreeColumn(TreeViewColumns grid, int pos) { _grid = grid; _pos = pos; }