日期:2014-05-18  浏览次数:20862 次

C#实现界面与功能的分离:Ribbon界面

以前写程序,在MainWindow里面到处都是菜单、按钮、工具栏的事件,这个文档的内容特别长,找一个功能对应的代码太多,很不方便,最近看了一些Sharpdevelop的插件方式(主要是网上其他朋友的据介绍,还有那本由该软件开发者所编写的书,不过只看了一部分),自己写了一个功能有限、很简单的框架(暂且称之为框架吧,对我自己来讲已经比以前方便了很多了),我使用了ribbon界面,是Developer Express v2011 vol 1 ,是使用他带的你个向导生成的,然后在此基础上改的:  见图:

 

如果要增加一个功能,只需要写一个类继承于:AbstractToolButton,然后覆写几个字段和一个函数:详见下方的代码:

  public  class Test:AbstractToolButton
    {
        private Image image = null;
        public override int Index
        {
            get
            {
                return 0;
            }
            set
            {
                base.Index = value;
            }
        }
        public override bool Enable
        {
            get
            {
                return true;
            }
        }
        public override string PageName
        {
            get
            {
                return "MyTest";
            }
        }
        public override string GroupName
        {
            get
            {
                return "File";
            }
        }
        public override string  Caption
        {
            get
            {
                return "Test0";
            }
            set
            {
                base.Text = value;
            }
        }
        public override System.Drawing.Image Image