2012-12-11 57 views
3

您好我正在開發一個解決方案,使用VSTO 2012和Microsoft Outlook 2010插件在Outlook 2010中創建工具欄。簡而言之,我可以創建Outlook功能區和一個按鈕,但我無法獲得打開.oft文件的按鈕。在Visual Studio中,我得到以下錯誤「名稱'應用程序'在當前上下文中不存在」。我還添加了對Microsoft Office 14.0對象庫的引用。下面是代碼...在當前上下文中不存在名稱'應用程序'

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Xml.Linq; 
using Outlook = Microsoft.Office.Interop.Outlook; 
using Office = Microsoft.Office.Core; 
using Microsoft.Office.Tools.Ribbon; 

namespace OutlookAddIn8 
{ 
public partial class Ribbon1 
{ 
    private void Ribbon1_Load(object sender, RibbonUIEventArgs e) 
    { 

    } 
    private void CreateItemFromTemplate() 
    { 
     Outlook.Folder folder = 
      Application.Session.GetDefaultFolder(
      Outlook.OlDefaultFolders.olFolderDrafts) as Outlook.Folder; 
     Outlook.MailItem mail = 
      Application.CreateItemFromTemplate(
      @"c:\ivy.oft", folder) as Outlook.MailItem; 
     mail.Subject = "Congratulations"; 
     mail.Save(); 
    } 

    private void button1_Click(object sender, RibbonControlEventArgs e) 
    { 

    } 
} 

}

感謝任何幫助表示讚賞它可能是簡單的東西這就是被錯過。

回答

3

可以使用Globals.ThisAddIn.Application訪問應用程序實例。如果您將AddIn類重新命名爲不同的例如MyAddIn然後命令將是:Globals.MyAddIn.Application

下面是詳細信息的鏈接:http://msdn.microsoft.com/en-us/library/vstudio/bb157876(v=vs.100).aspx

+0

好了,所以我在哪裏輸入字符串。對不起,我不是一個編碼員,只是試圖通過我在網上找到的位來完成這件事。提前致謝! –

+0

只需添加在你的函數開頭:'Outlook.Application Application = Globals.ThisAddIn.Application;' – melan

+0

非常感謝,擺脫了錯誤信息。現在的問題是我需要代碼來初始化按鈕上的按鈕。私人無效button1_Click(對象發件人,RibbonControlEventArgs e){我有這部分的代碼,但我會把它放在哪裏? –

1

到底最後到了那裏,繼承人的代碼.....

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Microsoft.Office.Tools.Ribbon; 
using Outlook = Microsoft.Office.Interop.Outlook; 


namespace OutlookAddIn3 
{ 
public partial class Ribbon1 
{ 
    private void Ribbon1_Load(object sender, RibbonUIEventArgs e) 
    { 

    } 
    private void button1_Click(object sender, RibbonControlEventArgs e) 
    { 
     Outlook.Application Application = Globals.ThisAddIn.Application; 
     Outlook.MailItem mail = 
      Application.CreateItemFromTemplate(
      @"Z:\Transfer\Outlook 2010 Templates\testsubject.oft") as Outlook.MailItem; 
     mail.Display(true); 
    } 
相關問題