/// <summary>
        /// 折叠图片背景图发生变化时触发的事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void pb_zhankai_BackgroundImageChanged(object sender, EventArgs e)
        {
            if (_zhankai)
            {
                //如果是展开状态,从数据库中获得该节点全部的子节点,然后循环实例化标签control,调整childrenindex,插入到容器中
                Panel p     = this.Parent as Panel;
                int   index = p.Controls.GetChildIndex(this);

                for (int i = 0; i < _bqInfo._childNodes.Count; i++)
                {
                    BiaoqianControl myuc = new BiaoqianControl(_bqInfo._childNodes[i]);
                    p.Controls.Add(myuc);
                    p.Controls.SetChildIndex(myuc, index);
                }
            }
            else
            {
                Panel p = this.Parent as Panel;
                //如果是折叠状态,循环判断biaoqiancontrol的标签信息的父标签名,如果等于父标签名称,那么展开状态改为折叠,
                int index = p.Controls.IndexOf(this);
                for (int i = index - 1; i >= 0; i--)
                {
                    if ((p.Controls[i] as BiaoqianControl)._bqInfo._jibie > _bqInfo._jibie)
                    {
                        p.Controls.Remove(p.Controls[i]);
                    }
                }
            }
        }
Example #2
0
        /// <summary>
        /// 传递一个标签信息实例进来,显示在界面上
        /// </summary>
        /// <param name="_bqInfo">内容标签</param>
        public BiaoqiankuControl(TagInfo _bqInfo)
        {
            InitializeComponent();
            this.Dock          = DockStyle.Top;
            cb_biaoqianku.Text = _bqInfo._kuming;
            _mybqInfo          = _bqInfo;
            //实例化一个标签info控件
            BiaoqianControl myuc = new BiaoqianControl(_mybqInfo)
            {
            };

            panel_biaoqian.Controls.Add(myuc);
        }