是否可以使用VSTO for Outlook 2007创建自定义文件夹类型? (即类似于olFolderContacts的新文件夹类型等)
理想情况下,我想要的是有一个文件夹,在选中后,它会在主Outlook窗口(收件箱和预览窗格所在的位置)中创建一个新的表单区域,并显示一个WPF用户控件。
由于
我发现该图片同时试图解决这个问题:http://www.add-in-express.com/add-in-net/outlook-regions-basics.php
答案 0 :(得分:0)
我能做的最接近的事情是:
在outlook上创建文件夹(我将其命名为login):
然后右键单击并设置其主页:
然后当我选择该文件夹或后面的代码时,我可以选择它,我的外观如下:
如果我可以使用wpf表单或自定义区域执行相同操作,那将是很好的。现在我必须使用websockets或其他机制来与该控件进行通信。
答案 1 :(得分:0)
由于Outlook使用Internet Explorer作为其浏览器,因此您可以获得SilverLight的本机支持。您是否有可能将内容嵌入SilverLight网页,然后将其设置为文件夹的主页? WPF和SL有很多共同点,所以这可能是你的解决方案。
答案 2 :(得分:0)
找到解决方案。唯一需要注意的是,我需要购买Advanced Outlook regions for VSTO并且花费我100美元。如果您购买该产品,您就是这样做的:
<强> 1。在vistual studio of type(Outlook 2010加载项)上创建一个新项目我命名了我的项目OutlookAddIn1
<强> 2。向项目添加新项目(我需要购买的产品)
第3。当您选择该项目向导时,请选择以下选项:
<强> 4。遵循所有默认值,直到向导完成(单击下一步,下一步等完成)
<强> 5。你有一个窗体。要放置WPF内容,您需要添加ElementHost
控件。有一个关于如何在Windows窗体上托管wpf用户控件的教程日志。为了保持这个答案不长,我不会说明如何。
<强> 6。对于这个答案的演示,我只需在该表单上放置一个按钮:
<强> 7。按下该按钮,我将隐藏该表单并显示该文件夹的缺失视图。所以这是该按钮背后的代码:
private void button1_Click(object sender, EventArgs e)
{
// disable the form that id does not show up
Globals.ThisAddIn.ADXOlForm1Item.Enabled = false;
// get the current selected folder
var thisFOlder = Globals.ThisAddIn.Application.ActiveExplorer().CurrentFolder;
// remove the webview pane in order to show the main folder view instead
thisFOlder.WebViewOn = false;
thisFOlder.WebViewURL = string.Empty;
// RESET FOLDER BY SELECTING A DIFFERENT ONE THEN THE SAME ONE
NameSpace nameSpace = Globals.ThisAddIn.Application.GetNamespace("MAPI");
MAPIFolder outboxFolder = nameSpace.GetDefaultFolder(OlDefaultFolders.olFolderOutbox);
Globals.ThisAddIn.Application.ActiveExplorer().CurrentFolder = outboxFolder; // CHANGE FOLDER TO A DIFFERNT ONE
System.Windows.Forms.Application.DoEvents();
Globals.ThisAddIn.Application.ActiveExplorer().CurrentFolder = thisFOlder; // SET INBOX AGAIN
// remeember to release objects
Marshal.ReleaseComObject(nameSpace);
Marshal.ReleaseComObject(outboxFolder);
Marshal.ReleaseComObject(thisFOlder);
this.Close();
}
<强> 8。当我在选择Mail类型的任何文件夹时看到我运行该项目备注时:
<强> 9。如果我按下该按钮,我将显示我选择的文件夹的默认视图
我现在唯一的问题是该视图显示了每个MailItem类型的文件夹。你可以在第一个wizzard上选择一个不像Jurnal那样常见的不同文件夹类型。然后在代码后面,您可以选择要显示该表单的jurnal文件夹。