演练:使用功能区设计器创建自定义选项卡

使用功能区设计器,可以创建自定义选项卡,然后在其中添加和放置控件。

适用于: 本主题中的信息适用于 Excel 的文档级项目。 有关详细信息,请参阅办公室应用程序和项目类型提供的功能。

本演练阐释了以下任务:

注意

以下说明中的某些 Visual Studio 用户界面元素在计算机上出现的名称或位置可能会不同。 这些元素取决于你所使用的 Visual Studio 版本和你所使用的设置。 有关详细信息,请参阅个性化设置 Visual Studio IDE

先决条件

你需要满足以下条件才能完成本演练:

创建 Excel 工作簿项目

使用功能区设计器的步骤对于所有 Office 应用程序几乎是相同的。 本示例使用一个 Excel 工作簿。

创建 Excel 工作簿项目

  • 创建名为 MyExcelRibbon 的 Excel 工作簿项目。 有关详细信息,请参阅 How to: Create Office Projects in Visual Studio

    Visual Studio 将在设计器中打开新工作簿,并将 MyExcelRibbon 项目添加到解决方案资源管理器

创建操作窗格

将两个自定义操作窗格添加到项目。 稍后会将显示和隐藏这些操作窗格的按钮添加到自定义选项卡中。

创建操作窗格

  1. “项目” 菜单上选择 “添加新项”

  2. “添加新项 ”对话框中,选择 ActionsPaneControl,然后选择“ 添加”。

    ActionsPaneControl1.csActionsPaneControl1.vb 文件将在设计器中打开。

  3. 在工具箱“常用控件”选项卡中,向设计器图面添加标签。

  4. “属性” 窗口中,将 label1 的 Text 属性设置为 “操作窗格 1”。

  5. 重复步骤 1 至 5,再创建一个操作窗格和标签。 将 第二个标签的 Text 属性设置为 “操作窗格 2”。

创建自定义选项卡

Office 应用程序的设计准则之一是:用户应始终能控制 Office 应用程序 UI。 若要为操作窗格添加此功能,可以添加用于从功能区上的自定义选项卡显示和隐藏每个操作窗格的按钮。 若要创建自定义选项卡,请将功能区(可视化设计器)项添加到项目。 设计器可帮助你添加和放置控件、设置控件属性以及处理控件事件。

创建自定义选项卡

  1. “项目” 菜单上选择 “添加新项”

  2. “添加新项” 对话框中,选择 “功能区(可视化设计器)”

  3. 将新功能区的名称更改为 MyRibbon,然后选择“ 添加”。

    MyRibbon.csMyRibbon.vb 文件将在功能区设计器中打开,并显示一个默认选项卡和组。

  4. 在功能区设计器中,选择默认选项卡。

  5. “属性”窗口中,展开 ControlId 属性,然后将 ControlIdType 属性设置为“自定义”。

  6. “标签 ”属性设置为 “我的自定义”选项卡

  7. 在功能区设计器中,选择 group1

  8. 在“属性”窗口中,将“标签”设置为“操作窗格管理器”。

  9. 在工具箱“办公室功能区控件”选项卡中,将按钮拖到 group1 上。

  10. 选择 button1

  11. “属性”窗口中,将“标签”设置为显示操作”窗格 1

  12. 向 group1 添加第二个按钮,并将“标签”属性设置为显示操作窗格 2”。

  13. 从工具箱“办公室功能区控件”选项卡中,将 ToggleButton 控件拖到 group1 上。

  14. “标签 ”属性设置为“ 隐藏操作”窗格

使用自定义选项卡上的按钮隐藏和显示操作窗格

最后一个步骤是添加对用户进行响应的代码。 为上述两个按钮的 Click 事件和切换按钮的 Click 事件添加事件处理程序。 在这些事件处理程序中添加相应代码即可隐藏和显示操作窗格。

使用自定义选项卡中的按钮隐藏和显示操作窗格

  1. 解决方案资源管理器中,打开 MyRibbon.csMyRibbon.vb快捷菜单,然后选择“查看代码”。

  2. 将下面的代码添加到 MyRibbon 类的顶部。 这段代码可以创建两个操作窗格对象。

    ActionsPaneControl1 actionsPane1 = new ActionsPaneControl1();
    ActionsPaneControl2 actionsPane2 = new ActionsPaneControl2();
    
  3. MyRibbon_Load 方法替换为以下代码。 这段代码会将操作窗格对象添加到 Controls 集合中,并在视图中这些隐藏对象。 Visual C# 代码还会将委托附加到多个功能区控件事件。

    private void MyRibbon_Load(object sender, RibbonUIEventArgs e)
    {
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1);
        Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2);
        actionsPane1.Hide();
        actionsPane2.Hide();
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false;
    
        this.button1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.button1_Click);
        this.button2.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.button2_Click);
        this.toggleButton1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
            this.toggleButton1_Click);
    
    
    }
    
  4. 将以下三个事件处理程序方法添加到 MyRibbon 类。 这些方法处理上述两个按钮 Click 事件和切换按钮的 Click 事件。 button1 和 button2 的事件处理程序显示两个交替出现的操作窗格。 toggleButton1 的事件处理程序显示和隐藏活动操作窗格。

    private void button1_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        actionsPane2.Hide();
        actionsPane1.Show();
        toggleButton1.Checked = false;
    }
    
    private void button2_Click(object sender, RibbonControlEventArgs e)
    {
        Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        actionsPane1.Hide();
        actionsPane2.Show();
        toggleButton1.Checked = false;
    
    }
    
    private void toggleButton1_Click(object sender, RibbonControlEventArgs e)
    {
        if (toggleButton1.Checked == true)
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false;
        }
        else
        {
            Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true;
        }
    
    }
    

测试自定义选项卡

运行项目时,Excel 将启动,功能区上会显示“ 我的自定义选项卡” 选项卡。 选择“我的自定义”选项卡上按钮以显示和隐藏操作窗格。

测试自定义选项卡

  1. F5 运行项目。

  2. 选择“ 我的自定义选项卡”选项卡

  3. “自定义操作窗格管理器 ”组中,选择“ 显示操作”窗格 1

    此时会显示操作窗格,并显示标签 “操作窗格 1”。

  4. 选择“ 显示操作”窗格 2

    此时会显示操作窗格,并显示标签 “操作窗格 2”。

  5. 选择“ 隐藏操作”窗格

    操作窗格不再可见。

后续步骤

可从以下主题了解有关如何自定义 Office 用户界面的更多信息: