RibbonX主要控件介绍(3)

本文将介绍库(gallery)控件。该控件是新Office 2007用户界面中最重要的控件之一,并且已公开了大量核心库功能,便于用户使用在自已的基于Office解决方案之中。
库的目的是将功能积累到库中供选择,以便于用户只需一次单击就能得到相同的结果。
在下面将介绍的示例加载项中,模仿了一个库,允许一次单击就能插入图片,而不需要打开对话框,再导航到文件树并选择图像。在Word的“插入”选项卡中“插图”组之后的放置该库,因为它与周围的功能最适合。
1
图1:自然图片库
<gallery id=”nature”
    label=”Nature Photos”
    size=”large”
    imageMso=”FlyoutAnchorMovie”
    onAction=”nature_OnAction”
    getItemCount=”nature_getItemCount”
    getItemImage=”nature_getItemImage”
    getItemLabel=”nature_getItemLabel”
    showItemLabel=”false”/>
库与菜单是相似的,可以大也可以小。在本例中,运用imageMso属性使用了大的内置的图标。控件使用回调来指定动态的属性,如标签,在某些情况下为控件的内容。库控件要求为项目回调以填充库,除非该库只包含静态的声明项目。在上面的示例中,回调返回150×150像素的PNG图像,为每个项目转换为IpictureDisp。
库控件最灵活的功能之一是能够自动调整图像。使用在示例中原始的PNG图像是150×150像素。通过指定新的itemHeight和itemWidth,该库将调整图像。同时也改变了getItemCount回调的返回值来返回16个项目代替9个项目。该库创建了一个4×4栅格,带有16个项目的组。
2
图2:更小的图像但有16个项目
<gallery id=”nature”
    label=”Nature Photos”
    size=”large”
    imageMso=”FlyoutAnchorMovie”
    onAction=”nature_OnAction”
    getItemCount=”nature_getItemCount”
    getItemImage=”nature_getItemImage”
    getItemLabel=”nature_getItemLabel”
    itemHeight=”75″
    itemWidth=”75″
    showItemLabel=”false”/>
当然,也可以按比例增加图像。在下一个示例中,库将图像由150×150像素扩大到200×200像素。
也可以指定库显示的行和列数。在本例中,只获取1列和2行。
3
图3:按比例增加图像,设置行和列
<gallery id=”nature”
    label=”Nature Photos”
    size=”large” imageMso=”FlyoutAnchorMovie”
    onAction=”nature_OnAction”
    getItemCount=”nature_getItemCount”
    getItemImage=”nature_getItemImage”
    getItemLabel=”nature_getItemLabel”
    itemHeight=”200″
    itemWidth=”200″
    rows=”2″
    columns=”1″
    showItemLabel=”false”/>
也可以选择在库项目中显示标签。下面的示例在每个项目中包含了标签,重新调整图像以成为更小,并设置显示10行。
4
图4:在库项目中显示标签
<gallery id=”nature”
    label=”Nature Photos”
    size=”large”
    imageMso=”FlyoutAnchorMovie”
    onAction=”nature_OnAction”
    getItemCount=”nature_getItemCount”
    getItemImage=”nature_getItemImage”
    getItemLabel=”nature_getItemLabel”
    itemHeight=”20″
    itemWidth=”20″
    rows=”10″
    columns=”1″
    showItemLabel=”true”/>
像Office 2007中的一些内置库一样,也可以在库的底部添加按钮。一般这些按钮配置在库中显示什么或者打开一个相关的设置对话框。
5
图5:库底部的按钮
<gallery id=”nature”
    label=”Nature Photos”
    size=”large”
    imageMso=”FlyoutAnchorMovie”
    onAction=”nature_OnAction”
    getItemCount=”nature_getItemCount”
    getItemImage=”nature_getItemImage”
    getItemLabel=”nature_getItemLabel”
    rows=”2″
    columns=”2″
    showItemLabel=”false”>
   
    <button id=”b222″
      imageMso=”Save”
      label=”Save selection to Nature Photos Server…”/>
   
    <button id=”b229″
      imageMso=”Dollar”
      label=”Purchase more photos…”/>

</gallery>
本文整理自:http://blogs.msdn.com/jensenh/archive,只是对其进行了初步翻译,仅供研读参考。


提示:您可以在评论中使用HTML标签,且任何与HTML标签相同的符号都会被理解为HTML标签并以相应的格式显示.如果您的评论中有代码,可以使用相应的标签,例如,如果有VB或VBA代码,则可以使用[vb]标签,即[vb]放置的代码[/vb],这样会很清晰地显示代码.

发表评论