Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 使用IncludeHeader ClipboardCopyMode时出现WPF Datagrid COMException异常_.net_Wpf_Wpfdatagrid_Clipboard - Fatal编程技术网

.net 使用IncludeHeader ClipboardCopyMode时出现WPF Datagrid COMException异常

.net 使用IncludeHeader ClipboardCopyMode时出现WPF Datagrid COMException异常,.net,wpf,wpfdatagrid,clipboard,.net,Wpf,Wpfdatagrid,Clipboard,在我的WPF应用程序中,我使用的是Datagrid控件;在控件定义中,我将ClipboardCopyMode属性定义为“IncludeHeader” <DataGrid Name="datagrid" ClipboardCopyMode="IncludeHeader"> </DataGrid> 有没有解决问题的建议。我看了其他文章,主要是关于当你明确使用剪贴板相关方法时如何处理这种情况,但是没有一篇与数据网格相关的文章- 从技术上讲,只有一个进程可以打开剪贴板,因此如

在我的WPF应用程序中,我使用的是
Datagrid
控件;在控件定义中,我将
ClipboardCopyMode
属性定义为“IncludeHeader”

<DataGrid Name="datagrid"  ClipboardCopyMode="IncludeHeader">
</DataGrid>

有没有解决问题的建议。我看了其他文章,主要是关于当你明确使用
剪贴板
相关方法时如何处理这种情况,但是没有一篇与
数据网格
相关的文章-

从技术上讲,只有一个进程可以打开剪贴板,因此如果另一个进程 进程已打开,后续请求将失败,直到 首先释放剪贴板。这是在WinForms中处理的 Clipboard类,在此类中它将重试设置,并在这两个设置之间有一个延迟 每次尝试,但如果WPF剪贴板类在上失败,它不会这样做 第一个显示异常发生。即使这样,我们也应该这样做 捕获异常并在异常发生时引发剪贴板操作错误 仍然失败

这篇意大利博客也解释了同样的事情,并提到了一些解决方法-

以下MSDN论坛线程表明,这可能是特定于机器的问题,您可以在其他机器上复制此问题吗-

更新:

博客链接似乎已关闭,但可以通过此链接访问缓存版本-


我的应用程序也有同样的问题。添加了一个DataGrid,它正在显示数据。在我切换到VS2012和.net4.5之前,该应用程序一直运行良好。之后,当我将内容复制到剪贴板时,应用程序崩溃了。对此的回答帮助了我。
System.Runtime.InteropServices.COMException (0x800401D0): 
OpenClipboard Failed (Exception from HRESULT: 0x800401D0 (CLIPBRD_E_CANT_OPEN))