我已經編寫了一些VSTO(2003)代碼,根據郵件項目的附件成功應用了一些強制主題行更改。該代碼被編寫爲在microsoft.office.interop.outlook.mailitem上運行但是,我需要相同的代碼來操作其他類型,例如microsoft.office.interop.outlook.appointmentitem(實際上它需要適用於任何用戶可以發送那將有一個主題)。如何處理Outlook VSTO對象,就好像它們是郵件項目
假設Outlook項目類型有一個主題屬性,一個附件屬性和一個保存方法,我該如何處理編寫適用於所有相關的interop.outlook類型的代碼。
我試圖通過反射解決這一點,但在的getProperty空returing所以我不能使用的GetValue它
? mi.GetType().GetProperty("Subject") null ?(mi as Microsoft.Office.Interop.Outlook.MailItem).Subject "Test Subject"
似乎沒有成爲一個通用的outlookitem類我可以投給,要做到這一點。什麼是正確的方法?
編輯: 要clarif我的代碼開始是這樣的...
void Application_ItemSend(object Item, ref bool Cancel) { if (Item is Microsoft.Office.Interop.Outlook.MailItem) { Microsoft.Office.Interop.Outlook.MailItem currentItem = Item as Microsoft.Office.Interop.Outlook.MailItem;
然後做的東西CURRENTITEM(包括通過對目前與Microosft.Office.Interop.Outlook.MailItem性質類型的各種功能。我希望他們來處理「Microsoft.Interop.Outlook.somethingsendable」
什麼類型是mi聲明的? – 2010-11-15 15:32:13
在我的原代碼中聲明爲mailitem,但是,我希望能夠處理其他類型...我將編輯我的問題以闡明 – Andiih 2010-11-15 15:38:42