从窗体到Outlook 2016消息的拖放问题

时间:2019-03-26 11:51:50

标签: c# outlook drag-and-drop

我有一个可以与Outlook 2010一起使用的解决方案,但是它不适用于Outlook 2016。 我将文件(pdf,doc,xls)从列表视图中拖放到Outlook中已经打开的电子邮件中。 如果我拖放操作,则可以从我的应用程序运行到Windows资源管理器。 我只有Outlook的问题!

在Outlook中,如果消息格式为HTML,则放下时什么也不会发生。如果格式是纯文本,则文件的完整路径将添加到邮件的正文中。

我使用Visual Studio 2013 .Net Framework 4.5

    private void item_Drag(object sender, ItemDragEventArgs e)
    {
        ListView lvdd = (ListView)sender;

        initDataDesFilesATransferer(lvdd);
    }

   private static void initDataDesFilesATransferer(ListView lvdd)
    {
        if (!verifSelectedItemExistent(lvdd))
            return;
        string[] nomDesFichiers = new String[lvdd.SelectedItems.Count];
        int i = 0;
        foreach (ListViewItem lvi in lvdd.SelectedItems)
        {
            nomDesFichiers[i] = lvi.SubItems[1].Text;
            i++;
        }
        DataObject data = new DataObject(DataFormats.FileDrop, nomDesFichiers);
        data.SetData(DataFormats.StringFormat, true, nomDesFichiers[0]);


       lvdd.DoDragDrop(data, DragDropEffects.Move);
    }

有人遇到过这个问题吗?它来自我的代码还是其他地方? 预先谢谢你。

0 个答案:

没有答案