示例#1
0
        private void treeEntities_AfterSelect(object sender, TreeViewEventArgs e)
        {
            TTreeNodeData nodeData   = e.Node.Tag as TTreeNodeData;
            string        entityName = nodeData.EntityName;
            long          entityKey  = nodeData.EntityKey;
            DataTable     data       = entityRepository.GetEntityDetailsByKey(entityName, entityKey);

            this.SuspendLayout();
            // clear controls
            for (int i = 0; i < resultLayoutPanel.Controls.Count; i++)
            {
                DataGridView d = resultLayoutPanel.Controls[0] as DataGridView;
                d.Dispose();
            }
            resultLayoutPanel.Controls.Clear();

            // create new result grids
            const int gridCount = 2;

            resultLayoutPanel.RowStyles.Clear();
            resultLayoutPanel.ColumnCount = 1;
            resultLayoutPanel.Dock        = DockStyle.Fill;
            resultLayoutPanel.RowCount    = gridCount;
            for (int i = 0; i < gridCount; i++)
            {
                var grid = new ComponentFactory.Krypton.Toolkit.KryptonDataGridView();
                grid.Dock                = DockStyle.Fill;
                grid.Location            = new Point(0, 0);
                grid.Name                = "gridEntityValues" + i.ToString();
                grid.TabIndex            = 0;
                grid.AutoGenerateColumns = true;
                grid.DataSource          = data;

                RowStyle rs;
                if (i == 0)
                {
                    rs = new RowStyle(SizeType.AutoSize);
                }
                else
                {
                    rs = new RowStyle(SizeType.Percent, 30);
                }
                resultLayoutPanel.RowStyles.Add(rs);
                resultLayoutPanel.Controls.Add(grid);
            }

            this.ResumeLayout();
        }
示例#2
0
        private void FindEntityByTextBoxString()
        {
            treeEntities.Nodes.Clear();
            string strFind = textboxSearchString.Text;

            List <TSearchEntityResult> findResult = entityRepository.SearchEntitiesByString(strFind);

            foreach (var elt in findResult)
            {
                string        strValue = $"{elt.FoundColumn} = {elt.StrValue} [{elt.Key}]";
                TreeNode      node     = new TreeNode(strValue);
                TTreeNodeData nodeData = new TTreeNodeData()
                {
                    EntityName = elt.EntityName,
                    EntityKey  = elt.Key,
                    Details    = elt.FoundColumn
                };

                node.Tag = nodeData;
                node.Nodes.Add("to do");
                treeEntities.Nodes.Add(node);
            }
        }
示例#3
0
        private void treeEntities_AfterExpand(object sender, TreeViewEventArgs e)
        {
            var nodeData = e.Node.Tag as TTreeNodeData;

            var searchResult = entityRepository.SearchChildEntitiesByParentKey(nodeData.EntityName, nodeData.EntityKey);

            // Заполнение открываемого уровня
            e.Node.Nodes.Clear();
            foreach (var elt in searchResult)
            {
                string        strValue    = $"{elt.FoundColumn} = {elt.Key}";
                TreeNode      newNode     = new TreeNode(strValue);
                TTreeNodeData newNodeData = new TTreeNodeData()
                {
                    EntityName = elt.EntityName,
                    EntityKey  = elt.Key,
                    Details    = elt.FoundColumn
                };

                newNode.Tag = newNodeData;
                newNode.Nodes.Add("to do");
                e.Node.Nodes.Add(newNode);
            }
        }