我正在尝试创建一个可以输入但也接受对话框选择的文本字段,以便可以将“联系人”附加到Outlook任务。 我基本上是在尝试使用c#和WPF重新创建Outlook表单联系人字段。我的意思是,有一个联系人按钮可以打开一个对话框以选择联系人。然后,该联系人将显示在文本字段中,并且可以交互并显示联系人详细信息。
ShowNamesDialougue 取得了成功,它采用了选定的名称并将其写入文本框。
我试图将超链接传递给TextBox和RichtextBox,得知TextBox不支持它,然后陷入了解析ContactItem的URI的困境。
"[Errno 2] The file doesn't exist: 'inexistent_file_name'"
contactsFolder
foreach (Outlook.Recipient recipient in snd.Recipients)
{
Hyperlink hyperKontakt = new Hyperlink(new Run(recipient.Name));
hyperKontakt.NavigateUri = new Uri(contactsFolder.FolderPath *contactname*);
HLTextBox.CaretPosition.Paragraph.Inlines.Add(hyperKontakt);
}
错误是 System.UriFormatException :'无效的URI:无法解析主机名。'
该值是oldefaultcontacts文件夹的Folderpath属性。
Outlook.Folder contactsFolder = _currentTaskItem.Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts) as Outlook.Folder;
在调试器 \\ hargreaves@company.de \ contacts 中看起来像这样。我曾尝试寻找完全合格的路径,但始终对MAPI的确切含义及其所在位置感到困惑。