示例#1
0
文件: frmMain.cs 项目: Kurris/AGW
        /// <summary>
        /// 双击导航栏树节点
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Treeview_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            string sSourceName = e.Node.Name;

            if (string.IsNullOrEmpty(sSourceName))
            {
                return;
            }

            string sSourceText = e.Node.Text;

            //检查是否已打开
            foreach (TabPage ShowedPage in MainTab.TabPages)
            {
                if (ShowedPage.Name.Equals(sSourceName, StringComparison.OrdinalIgnoreCase))
                {
                    MainTab.SelectedTab = ShowedPage;
                    return;
                }
            }

            TabPage page = ControlsHelper.NewPage(sSourceText, sSourceName);

            MainTab.TabPages.Add(page);
            MainTab.SelectedTab = page;

            InitForm(sSourceName);
        }
示例#2
0
        /// <summary>
        /// 初始化一个新Page
        /// </summary>
        /// <param name="Title">标题</param>
        /// <param name="Name">key名称</param>
        /// <param name="Grid">加载的数据</param>
        public ComponentDataGrid InitializeNewTabPage(string Title, string Name, DataTable Grid)
        {
            //如果存在相同名称Page
            if (TabCtrl.TabPages.ContainsKey(Name))
            {
                ComponentDataGrid finGrid = TabCtrl.TabPages[Name].Controls.OfType <ComponentDataGrid>().FirstOrDefault();
                finGrid.DataSource = Grid;
                return(finGrid);
            }

            TabPage page = ControlsHelper.NewPage(Title, Name);

            TabCtrl.TabPages.Add(page);

            ComponentToolbar toolstrip = ControlsHelper.NewToolStrip(Name);

            page.Controls.Add(toolstrip);
            toolstrip.BringToFront();

            DataTable dtColInfo = DBHelper.GetDataTable($@"select * from T_InterfaceColums where fInterfacename='{Name}'");

            bool bgenTree = false;

            if (!_mbMain)
            {
                goto NoTreeGeneral;
            }

            if (dtColInfo != null && dtColInfo.Rows.Count > 0)
            {
                DataRow[] rows = dtColInfo.Select("fInterFaceColIsTree = 1", "fnum");

                bgenTree = rows.Count() > 0
                  ? true
                  : false;

                if (bgenTree)
                {
                    Tree      = new ComponentTree();
                    Tree.Dock = DockStyle.Left;
                    page.Controls.Add(Tree);

                    ControlsHelper.CreateTree(Tree, rows, Grid);

                    EventHelper helper = new EventHelper();
                    helper.BindingTreeNodeOnClick(Tree);

                    Tree.ExpandAll();

                    Tree.BringToFront();

                    Splitter splitter = new Splitter();
                    page.Controls.Add(splitter);
                    splitter.BringToFront();
                    splitter.Dock = DockStyle.Left;
                }
            }

            //没有树结构
NoTreeGeneral:


            ComponentDataGrid dgv = ControlsHelper.NewDataGrid(Grid, dtColInfo);

            dgv.Name = Name;
            page.Controls.Add(dgv);
            dgv.Dock = DockStyle.Fill;
            dgv.BringToFront();

            dgv.BindingToolBar(toolstrip);
            dgv.BindingTabPage(page);

            toolstrip.BindingDataGrid(dgv);
            toolstrip.BindingTabPage(page);


            if (bgenTree)
            {
                Tree.BindingDataGrid(dgv);
                Tree.BindingTabPage(page);

                dgv.BindingTree(Tree);

                _mbMain = false;
            }

            return(dgv);
        }