用于Outlook 2013的Visual Studio 2013加载项

时间:2015-08-17 16:05:09

标签: visual-studio visual-studio-2013 outlook

Visual Studio 2013。

Outlook 2013

我试图在Outlook2013的“主页”选项卡上创建一个按钮。显然这应该是非常简单的,但我显然在这里做错了,因为谷歌告诉我它就像将ControlId.OfficeId设置为TabMail一样简单。

我已经下载了Office2013FluentUserInterfaceControlIdentifiers.zip文件并检查了该标签是否仍然具有相同的名称 - 而且确实如此。

我的新标签页很简单 - 只是我从工具箱中拖出一个按钮,将ControlIdType更改为Office,将OfficeId更改为TabMail

如果我使用TabDeveloper,我可以获得显示按钮的唯一标签是开发人员标签。我希望它出现在主Developer选项卡上,它只出现在消息的开发者选项卡上。

我真的没有任何代码可以发布到这个问题而不确定还有什么要说的。

我希望其他人遇到类似的问题,并指出我的方向正确。

1 个答案:

答案 0 :(得分:0)

第1步 - 找出Add In是否导致任何错误:

  

https://msdn.microsoft.com/en-us/library/bb608619.aspx   显示加载项用户界面错误

     

启动应用程序。 (即Outlook)

     

单击“文件”选项卡。

     

点击选项。

     

在类别窗格中,单击“高级”。

     

在详细信息窗格中,选择“显示加载项用户界面错误”,然后单击“确定”。

     

对于Outlook,“显示加载项用户界面错误”复选框位于详细信息窗格的“开发人员”部分中。对于其他   应用程序,该复选框位于常规部分   细节窗格。

在我的方案中,当您双击电子邮件以在单独的窗口中打开它时,错误会显示出来:

ErrorMessage

奇怪的是 - 根据Microsoft的文件,我使用的ControlId似乎是正确的

  

Office2013FluentUserInterfaceControlIdentifiers.zip http://www.microsoft.com/en-gb/download/details.aspx?id=36798

在无法停留一小时之后 - 我决定点击protected void CustomValidator2_ServerValidate(object source, ServerValidateEventArgs args) { if (TelField.Text.Trim() == "" && EmailField.Text.Trim() == "") { args.IsValid = false; } else { args.IsValid = true; } }

Export Button location

这会创建一个Export Ribbon to XML文件和一个.cs文件。 .xml文件告诉您从中复制一些代码并将其粘贴到ThisAddIn.cs文件中。执行此操作后,.cs文件是主文件,设计器似乎被忽略 - 确保您在XML .xml中仍然拥有正确的ControlId,它应该可以正常工作!

<tab idMso="TabMail">

Working button

我不确定为什么在没有转换为XML的情况下我无法让设计师工作 - 这是我第一次不得不这样做。希望这能帮助遇到同样问题的其他人。