这是VS2010 + Office 2010加载项。我想要的只是在多个内置选项卡中添加一个按钮(或按钮组)。例如,我的按钮应该在新邮件功能区和新约会功能区中可用。我尝试添加一个新选项卡(可视设计器中的 ),但这似乎不起作用。按钮组显示在“新邮件”选项卡上,但不显示在“约会”选项卡上。顺便说一句,我使用以下ID:TabNewMailMessage
和TabAppointment
。
答案 0 :(得分:4)
对于其他人来说,我唯一可以在Appointment和New Mail Message选项卡上看到我的组的方法是为每个内置选项卡添加一个Ribbon,然后复制/粘贴所有从一个功能区到另一个功能区的UI和代码。确保为每个内置选项卡选择适当的RibbonType(功能区的属性)。
答案 1 :(得分:1)
指定答案现在已过时!
答案 2 :(得分:0)
我没有Outlook,但我在Word / Excel / PPT中使用了以下内容,所以我希望它也能在Outlook中运行(未经测试!)。
尝试添加功能区(XML)项,然后使用看起来相同的按钮添加两个选项卡,并使用不同的ID调用相同的代码。
XML:
<tab idMso="TabNewMailMessage">
<group id="MyGroup1" label="My Group1">
<button id="myButton1" label="Button 1" size="large" onAction="ButtonOnAction" />
</group>
</tab>
<tab idMso="TabAppointment">
<group id="MyGroup2" label="My Group2">
<button id="myButton2" label="Button 2" size="large" onAction="ButtonOnAction" />
</group>
</tab>
C#:
public void ButtonOnAction(IRibbonControl control)
{
switch (control.Id)
{
case "myButton1":
case "myButton2":
// do something
Console.Out.WriteLine("Button ID: {0}", control.Id);
break;
}
}
答案 3 :(得分:0)
与上面的答案类似但不使用XML,您可以让该组在两个不同的位置添加第二个标签。
在功能区设计器中,向功能区添加第二个选项卡,并将ControlID更改为您要查看组的第二个位置。然后右键单击原始选项卡中的组,然后单击“复制”。单击返回新选项卡并将组粘贴到那里。它将复制组中已有的任何内容。但是,您必须重新添加事件。但对我来说,我只是重新使用已经创建的事件,它完美地运行。欢呼声。