示例#1
0
        public void 更新角色(E角色 __角色)
        {
            _角色 = __角色;
            显示属性(_对象明细.属性列表);

            this.out容器.Panel1Collapsed = this.out属性.Rows.Count == 0;

            if (_对象明细.方法列表.Count == 0 && _对象明细.事件列表.Count == 0)
            {
                this.out容器.Panel2Collapsed = true;
            }
            else
            {
                this.out容器.Panel2Collapsed = false;
                this.out方法列表.TabPages.Clear();
                _对象明细.方法列表.ForEach(q =>
                {
                    if ((q.角色 & _角色) != _角色)
                    {
                        return;
                    }
                    var __方法控件 = new F对象_方法(_访问入口, _对象名称, q)
                    {
                        Dock = DockStyle.Fill
                    };
                    //__方法控件.执行方法 += k => __方法控件.设置返回值(_访问入口.执行方法(_对象名称, q.名称, k));
                    var __控件 = new TabPage(q.称)
                    {
                        Padding = new Padding(5), BackColor = Color.White, ToolTipText = q.称
                    };
                    __控件.Controls.Add(__方法控件);
                    this.out方法列表.TabPages.Add(__控件);
                });
                _对象明细.事件列表.ForEach(q =>
                {
                    if ((q.角色 & _角色) != _角色)
                    {
                        return;
                    }
                    var __事件控件 = new F对象_事件(_访问入口, _对象名称, q)
                    {
                        Dock = DockStyle.Fill
                    };
                    var __控件 = new TabPage(q.称)
                    {
                        Padding     = new Padding(5),
                        BackColor   = Color.White,
                        ToolTipText = q.称 + "(事件)",
                        ImageIndex  = 0
                    };
                    __控件.Controls.Add(__事件控件);
                    this.out方法列表.TabPages.Add(__控件);
                });
            }
        }
        public void 更新角色(E角色 __角色)
        {
            _角色 = __角色;
            显示属性(_对象明细.属性列表);

            this.out容器.Panel1Collapsed = this.out属性.Rows.Count == 0;

            if (_对象明细.方法列表.Count == 0 && _对象明细.事件列表.Count == 0)
            {
                this.out容器.Panel2Collapsed = true;
            }
            else
            {
                this.out容器.Panel2Collapsed = false;
                this.out方法列表.TabPages.Clear();
                _对象明细.方法列表.ForEach(q =>
                {
                    if ((q.角色 & _角色) != _角色)
                    {
                        return;
                    }
                    var __方法控件 = new F对象_方法(_访问入口, _对象名称, q) { Dock = DockStyle.Fill };
                    //__方法控件.执行方法 += k => __方法控件.设置返回值(_访问入口.执行方法(_对象名称, q.名称, k));
                    var __控件 = new TabPage(q.名称) { Padding = new Padding(5), BackColor = Color.White, ToolTipText = q.名称 };
                    __控件.Controls.Add(__方法控件);
                    this.out方法列表.TabPages.Add(__控件);
                });
                _对象明细.事件列表.ForEach(q =>
                {
                    if ((q.角色 & _角色) != _角色)
                    {
                        return;
                    }
                    var __事件控件 = new F对象_事件(_访问入口, _对象名称, q) { Dock = DockStyle.Fill };
                    var __控件 = new TabPage(q.名称)
                    {
                        Padding = new Padding(5),
                        BackColor = Color.White,
                        ToolTipText = q.名称 + "(事件)",
                        ImageIndex = 0
                    };
                    __控件.Controls.Add(__事件控件);
                    this.out方法列表.TabPages.Add(__控件);
                });
            }
        }