枚举Outlook ContactItem属性
我正在尝试使用以下代码枚举Microsoft.Office.Interop.Outlook.ContactItem对象的属性(让我们称之为ci):
System.Reflection.BindingFlags bf = System.Reflection.BindingFlags.Default; foreach (System.Reflection.PropertyInfo pi in ci.GetType().GetProperties(bf)) { Console.WriteLine("Property Info {0}", pi.Name); }
我实际上尝试了几种BindingFlag值的组合,但是没有返回任何属性。
这是ContactItem的定义方式:使用System.Runtime.InteropServices;
namespace Microsoft.Office.Interop.Outlook { [Guid("00063021-0000-0000-C000-000000000046")] [CoClass(typeof(ContactItemClass))] public interface ContactItem : _ContactItem, ItemEvents_10_Event { } }
这就是_ContactItem的定义方式(为简单起见,我只保留了3个道具):
using System; using System.Runtime.InteropServices; namespace Microsoft.Office.Interop.Outlook { [TypeLibType(4160)] [Guid("00063021-0000-0000-C000-000000000046")] public interface _ContactItem { [DispId(14848)] string Account { get; set; } [DispId(63511)] Actions Actions { get; } [DispId(14913)] DateTime Anniversary { get; set; } } }
有人能帮助我吗?
提前致谢
短发
您无需手动定义接口。 只需在C#项目中添加对“Microsoft Outlook XX.0类库”的引用,然后使用与此类似的代码:
using System; using Outlook = Microsoft.Office.Interop.Outlook; namespace OutlookTest { class Program { static void Main(string[] args) { Outlook.Application olApplication = new Outlook.Application(); // get nameSpace and logon. Outlook.NameSpace olNameSpace = olApplication.GetNamespace("mapi"); olNameSpace.Logon("Outlook", "", false, true); // get the contact items Outlook.MAPIFolder _olContacts = olNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts); Outlook.Items olItems = _olContacts.Items; foreach (object o in olItems) { if (o is Outlook.ContactItem) { Outlook.ContactItem contact = (Outlook.ContactItem)o; foreach (Outlook.ItemProperty property in contact.ItemProperties) { Console.WriteLine(property.Name + ": " + property.Value.ToString()); } } } Console.WriteLine("Press any key"); Console.ReadKey(); } } }
希望这可以帮助。
– 弗兰克
上述就是C#学习教程:枚举Outlook ContactItem属性分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1024487.html