zoukankan      html  css  js  c++  java
  • 2018-2-13-WPF-拖动时出现-Invalid-FORMATETC-structure

    title author date CreateTime categories
    WPF 拖动时出现 Invalid FORMATETC structure
    lindexi
    2018-2-13 17:23:3 +0800
    2018-2-13 17:23:3 +0800
    WPF

    如果在 WPF 需要支持一个东西可以拖动,那么可以使用 DragDrop ,但是使用这个之后就出现了异常

    System.Runtime.InteropServices.COMException was unhandled
    Message: An exception of type 'System.Runtime.InteropServices.COMException' occurred in PresentationCore.dll and wasn't handled before a managed/native boundary
    Additional information: Invalid FORMATETC-Structure (Exception HRESULT: 0x80040064 (DV_E_FORMATETC))

    如果需要拖动一个文字,那么可以使用下面代码

                DataObject dataObject = new DataObject(DataFormats.Text, "hello");
                    DragDrop.DoDragDrop(this, dataObject, DragDropEffects.Move);

    这个在程序内拖动不会出现问题,但是如果在拖动在程序外,就会出现

    'System.Runtime.InteropServices.COMException' occurred in PresentationCore.dll
    System.Runtime.InteropServices.COMException was unhandled
    Message: An exception of type 'System.Runtime.InteropServices.COMException' occurred in PresentationCore.dll and wasn't handled before a managed/native boundary
    Additional information: Invalid FORMATETC-Structure (Exception HRESULT: 0x80040064 (DV_E_FORMATETC))

    这是正常的,因为这是 windows 的坑。如果拖动的程序无法把你的内容转换为他需要的,那么就会出现这个错误。

    只需要忽略就好了

    参见 https://stackoverflow.com/a/34092811/6116637

  • 相关阅读:
    python 大小写转换函数
    linux 自学系列:GRUB引导程序
    linux 自学系列:退出linux命令
    dict 常用方法
    ln命令简单用法
    利用easy_install 工作效率提升起来
    linux 自学系列:touch 命令
    linux 改文件夹命令
    开机自动重启脚本
    multiprocessing 用法
  • 原文地址:https://www.cnblogs.com/lindexi/p/12086256.html
Copyright © 2011-2022 走看看