Beispiel #1
0
        public OrgCharNode BuildNodeTree()
        {
            DataRow[] drs = Table.Select(string.Format("{0}='{1}'", ParentKeyFileName, 0));
            if (ControlBuilder == null)
            {
                ControlBuilder = (IOrgCharControlBuilder)Activator.CreateInstance(this.BuilderType);
            }

            IOrgCharNodeControl obj = ControlBuilder.Build(drs[0]);

            this.Container.Controls.Add((Control)obj);
            obj.Node_X     = -100;
            obj.NodeHeight = OrgCharGenerator.NODE_HEIGHT;
            obj.NodeWidth  = OrgCharGenerator.NODE_WIDTH;
            OrgCharNode rootn = new OrgCharNode(obj);

            obj.Node = rootn;
            BuildNodeTree(drs[0], rootn);
            return(rootn);
        }
Beispiel #2
0
        private void BuildNodeTree(DataRow r, OrgCharNode pn)
        {
            DataRow[] drs = Table.Select(string.Format("{0}='{1}'", ParentKeyFileName, r[KeyFileName]));
            foreach (DataRow d in drs)
            {
                if (ControlBuilder == null)
                {
                    ControlBuilder = (IOrgCharControlBuilder)Activator.CreateInstance(this.BuilderType);
                }
                IOrgCharNodeControl obj = ControlBuilder.Build(d);
                this.Container.Controls.Add((Control)obj);

                obj.Node_X     = -100;
                obj.NodeHeight = OrgCharGenerator.NODE_HEIGHT;
                obj.NodeWidth  = OrgCharGenerator.NODE_WIDTH;
                OrgCharNode n = new OrgCharNode(obj);
                obj.Node = n;
                pn.AddChild(n);
                BuildNodeTree(d, n);
            }
        }