wpf TextBox复制文字卡顿 和迅雷的冲突
迅雷会在后台一直监控读取用户剪切板,如果发现是下载格式,将会弹出下载框
在wpf的TextBox中,快速按Ctrl C
会导致获取剪切板和设置剪切板的命令争抢引发System.Runtime.InteropServices.COMException
这个异常
通过查看源代码,发现在复制文字时,他们都不同情况的重试,暂停
这可能就导致了一直ctrl + c,一直:失败、暂停、重试、卡顿
这个情况,仅测试在wpf会存在,其他的文本框,vs 浏览器 记事本等等都没有出现这种情况
在winform中
System.Windows.Forms
public sealed class Clipboard
/// <include file='doc\Clipboard.uex' path='docs/doc[@for="Clipboard.SetDataObject2"]/*' /> /// <devdoc> /// <para>Overload that uses default values for retryTimes and retryDelay.</para> /// </devdoc> public static void SetDataObject(object data, bool copy) { SetDataObject(data, copy, 10 /*retryTimes*/, 100 /*retryDelay*/); }
在wpf中
System.Windows
public static class Clipboard
尝试自己写一个复制,还是重试法,但他就不卡顿了
<TextBox CommandManager.PreviewExecuted="OnPreviewExecuted" Text="trykle test text" />
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
2019-10-19 MaxScript 防坑规范指南