技术开发 频道

VS与Win7共舞:用XML文件定义Ribbon界面

  【IT168 专稿】在上一篇文章中,我们介绍了如何利用Windows Scenic Ribbon API为一个普通的Windows应用程序添加Ribbon界面。其中,我们只是简单地添加了一个Ribbon面板和一个按钮控件,还没有实现任何的具体功能。这就像我们创建了一个Ribbon容器,等着我们将各种Ribbon控件装进去并对控件的各种消息进行处理,以实现相应的业务逻辑。

  在这一篇文章中,我们就来介绍如何向Ribbon面板添加各种Ribbon控件并实现控件的合理排布。

  微软在自己大量用户体验研究的基础上,同时积极汲取用户对第一代Ribbon界面的反馈,在第二代Scenic Ribbon界面中,提供了更加丰富的Ribbon控件,使得Ribbon界面的控件更加丰富。通过这些Ribbon控件的灵活组合应用,能够应对各种应用程序对Ribbon界面控件的需要。下面我们就来介绍一下如何为Ribbon界面添加各种Ribbon控件并对这些控件进行排列布局。

  添加Ribbon界面添加应用程序菜单

  除了Ribbon面板,Ribbon界面的最大革新之处就是它的应用程序菜单。在Ribbon界面中,我们可以在Ribbon面板上布置一些常用的命令功能,而对于一些不太常用的功能,比如文件打开关闭,系统设置等等,都可以在应用程序菜单中进行。Ribbon界面中应用程序菜单的定义非常简单,跟添加按钮控件相似,我们需要先在XML文件的命令部分添加菜单中需要的各个菜单项:
 

<!—应用程序菜单项-->
    
<Command Name="FileMenu"
             Symbol
="cmdFileMenu"
             Id
="25000" />
    
<!—为最长使用文档列表定义控件 -->
    
<Command Name="cmdMRUList"
             Symbol
="cmdMRUList"
             Id
="25050"/>
    
<Command Name="cmdMRUItems"
             Symbol
="cmdMRUItems"
             Id
="25051"/>
    
<Command Name="cmdNew"
             Symbol
="cmdNew"
             Comment
="New"
             Id
="25001"
             LabelTitle
="New">
        
<Command.LargeImages>
          
<Image Source="NewL.bmp"/>
        
</Command.LargeImages>
    
</Command>
    
<Command Name="cmdOpen"
             Symbol
="cmdOpen"
             Comment
="Open"
             Id
="25002"
             LabelTitle
="Open"/>
    
<Command Name="cmdSave"
             Symbol
="cmdSave"
             Comment
="Save"
             Id
="25003"
             LabelTitle
="Save"
             TooltipTitle
="Save tooltip title"
             TooltipDescription
="Save tooltip description."/>
    
<Command Name="cmdPrint"
             Symbol
="cmdPrint"
             Comment
="Print"
             Id
="25004"
             LabelTitle
="Print" />
    
<Command Name="cmdExit"
             Symbol
="cmdExit"
             Comment
="Exit"
             Id
="25005"
             LabelTitle
="Exit" />
1
相关文章