使用DEV控件创建Winform主框架(Ribbion)(二)

创建主框架希望所有的按钮使用同一个方法即可打开相应界面,方便后期的维护和扩展,以下介绍其中的一种方式

(一)首先单击ribbonControl1_ItemClick事件,所有的button点击时都会触发此事件,所以方法可以写在事件里面


(二)此功能的主要方法就是将界面的类名由一个字串反射为一个Form文件

方法如下:

/// <summary>
        /// 反射界面
        /// </summary>
        /// <param name="frmName"></param>
        /// <returns></returns>
        public DevExpress.XtraEditors.XtraForm ContrForm(string frmName)
        {
            try
            {
                DevExpress.XtraEditors.XtraForm tmpFrm = (DevExpress.XtraEditors.XtraForm)System.Reflection.Assembly.Load("Authority").CreateInstance(frmName, true);
                return tmpFrm;
            }
            catch (Exception ex)
            {
                return null;
            }
        }

(三)事件写入以下方法(需在button的Tag事件中写入Form的文件名,需包含命名空间)

private void ribbonControl1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            DevExpress.XtraBars.BarButtonItem btn = e.Item as DevExpress.XtraBars.BarButtonItem;
            string frmName = "";
            if (btn.Tag != null &&!string.IsNullOrEmpty(btn.Tag.ToString()))
            {
                frmName = btn.Tag.ToString().Trim();
            }
            else
            {
                return;
            }
            DevExpress.XtraEditors.XtraForm frm = ContrForm(frmName);
            foreach (DevExpress.XtraTabbedMdi.XtraMdiTabPage item in xtraTabbedMdiManager1.Pages)
            {
                if (item.MdiChild.Name == frm.Name)
                {
                    xtraTabbedMdiManager1.SelectedPage = item;
                    return;
                }
            }
            frm.MdiParent = this;
            frm.Show();
        }

(四)以上的方法即可创建一个基本的框架,其他的功能在以后添加即可

运行效果如图


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值