天天看点

DotNetBar使用心得

使用dotnetbar做出office2007的效果

步骤1:

打开vs2005,新建一个项目。

步骤2:

将DevComponents.DotNetBar2.dll拷贝到debug目录下(当然,不是必须的)。

步骤3:

将dotnetbar中的控件添加到vs2005工具箱中,具体做法是:点击vs上的菜单“工具”下的“选择工具箱项”,然后“浏览“,选择刚才复制到debug目录下的DevComponents.DotNetBar2.dll,确定,这样工具箱下面就新增了一些dotnetbar里面的控件。

步骤4:

首先将一个RibbonControl控件拖动到主窗体上,这时会看到,外面有一个c#的窗体边框,内部是office的风格,这就是传说中的不三不四,哈哈,接下来就将它变成纯粹的office风格窗体。

步骤5:

让Form1继承DevComponents.DotNetBar.Office2007RibbonForm

也就是变成“public partial class Form1 : DevComponents.DotNetBar.Office2007RibbonForm”。

到这里,运行就可以看到想要的风格了。

下面的步骤是添加变换风格功能

步骤6:

右击RibbonControl控件,选择Create Button添加一个按钮buttonItemStyle,将按钮的属性ItemAlignment改为Far,让其躲到最右边。

步骤7

右击刚才添加的button选择 add button,重复此动作,在buttonItemStyle下面添加三个子按钮(我命名为buttonItemBlue,buttonItemBlack,buttonItemSilver),text分别设置为“office

07 blue”,“office 07 black”,“office 07 silver”。

步骤8

为form1添加一个变量

private DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme m_Scheme = DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme.Silver;

步骤9 

将一个Command控件拖到窗体上,查看属性-事件,添加其Execute事件command1_Executed,事件中的代码如下:

private void command1_Executed(object sender, EventArgs e)       
 {            
DevComponents.DotNetBar.ICommandSource source = sender as DevComponents.DotNetBar.ICommandSource;            
if (source.CommandParameter is string)           
 {
                DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme colorScheme = (DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme)Enum.Parse(typeof(DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme), source.CommandParameter.ToString());                   ribbonControl1.Office2007ColorTable = colorScheme;            
}            
else if (source.CommandParameter is Color)            
{
                DevComponents.DotNetBar.RibbonPredefinedColorSchemes.ChangeOffice2007ColorTable(this, m_Scheme, (Color)source.CommandParameter);            
}            
this.Invalidate();        
}             

步骤10

刚才不是添加了三个按钮吗,现在就为这三个按钮设置属性,查看buttonItemBlue的属性,发现command属性了没?将其command选择为刚才添加的command1,并将其commandParameter属性设为"Blue"

,重复此步骤,为buttonItemBlack和buttonItemSilver设置command属性为command1,commandParameter分别为“Black”和“Silver”。

去掉标题栏

你可以将FormBorderStyle属性设置为None来去掉标题栏,去掉后就没有最大化和最小化按钮了。你可以自己实现相同的功能,在自定义按钮的事件处理程序中设置WindowState属性为Minimized和Maximized就可以了。

DotNetBar里面的控件DockSite我在工具箱里找不到

拖一个DotNetBarManager控件,会自动创建8个docksite

bar的text属性更改不了

1.首先向楼主说的把AutoSyncBarCaption属性设为False

2.在解决方案里面,找到窗体下面的Designer.cs文件打开,这是控件文件好像,不管啦 直接搜索你的bar名字 然后你继续看 向下看 你自己就会明白 找到

// dockContainerItem3
            // 
            this.dockContainerItem3.Control = this.panelDockContainer3;
            this.dockContainerItem3.Name = "dockContainerItem3";
            this.dockContainerItem3.Text = "dockContainerItem3";//把这里换成你要的text就ok啦