我正在为Visual Studio中的c#开发一个CRM解决方案。我在检查器窗口中添加了一个用于修改联系信息的功能区。 CRM系统(使用单独的程序)通过检查contact.User2字段(字符串)来确定是否已编辑联系人。当前,当为联系人打开检查器窗口时,将为该ContactItem初始化写入事件,并且当用户单击“保存”时,contact.User2将设置为“true”。在完整检查器窗口中修改信息时,此方法非常有效。我的问题是,在人们查看时,如果用户双击联系人,Outlook会提供联系人信息的可编辑“预览”。每当保存联系人信息时,我都需要一种方法将User2设置为true,而不仅仅是在打开联系人窗口时。
我尝试了以下内容: foreach(SearchFolder中的Outlook.ContactItem人) { 联系=人; contact.Write + = new ItemEvents_10_WriteEventHandler(Written); }
private void Written(ref Boolean SavePlease)
{
MessageBox.Show("Written " + contact.FullName);
//contact.User2 = "true";
}
消息框用于调试目的。此事件将触发一次,但会在列表名称中列出第一个联系人,而不是我保存信息的人。 如果相关,则在为联系人打开检查器窗口后,初始化写入事件并保存联系人的“预览”视图,然后将User2设置为true。任何帮助或指导表示赞赏,谢谢!展望2013。
答案 0 :(得分:1)
对MAPIFolder.Items属性返回的Items集合使用Items.ItemChange事件。