我已经在google和stackoverflow上搜索了两个小时了。一定有一些我只是忽略了的东西。有没有一种简单的方法可以让消息框中的文本可选?到目前为止,当我调用MessageBox.Show()时,我不能复制显示的文本。为什么不行?如何将文本设置为可复制?
我的代码:
//catch all exceptions
catch (Exception ex)
{
MessageBox.Show(ex.Message);
//throw;
}
我希望能够选择出现的错误消息,以便用户可以将其发送给我,我可以解决他们的问题。任何帮助都是非常感谢的。
编辑:无法使用crtl-c方法。我的用户不能理解这个概念。需要用鼠标突出显示并右键单击以选择选项。谢谢!
编辑:作为参考,我最终使用了混合的答案。我创建了一个只有一个按钮的弹出窗口,并在按钮操作后将其复制到剪贴板。它不是完美的,但有了正确的标签,它现在就足够好了。感谢大家的建议!
//catch all exceptions
catch (Exception ex)
{
//MessageBox.Show(ex.Message);
MessageBoxButtons buttons = MessageBoxButtons.OK;
DialogResult result;
// Displays the MessageBox.
result = MessageBox.Show(ex.Message + "\n\nClick OK button to copy to clipboard", "Error", buttons);
if (result == System.Windows.Forms.DialogResult.OK)
{
Clipboard.SetText(ex.Message);
//throw;
}
}
发布于 2011-10-21 02:27:14
在用户关闭MessageBox之后或之前,我会使用如下代码将MessageBox的文本复制到剪贴板:
var msg = "Hello world!";
MessageBox.Show(msg);
Clipboard.SetText(msg);
这应该足够容易让你的用户理解。
发布于 2011-10-21 02:27:30
在我工作过的所有生产系统上,我们创建了一个自定义对话框,其中包含一个友好的用户消息,其中包含一个按钮,用于通过电子邮件将错误消息、堆栈跟踪、屏幕截图和系统信息发送到支持电子邮件。
发布于 2011-10-21 02:16:29
据我所知,这已经被问了很多次了,我找到的唯一解决方案是,如果你可以选择消息框,复制它(它将被复制),然后你可以粘贴它,它会以一种很好的格式粘贴内容……
默认情况下,标准消息框无法选择文本。
https://stackoverflow.com/questions/7840231
复制相似问题