如何在WPF中允许从MessageBox中选择和复制文本?
答案 0 :(得分:94)
如果您不需要选择文本作为要求,只需使用System.Windows.Forms.MessageBox。它映射到系统默认值,它已经允许使用 Ctrl + C 复制其内容。
答案 1 :(得分:23)
您可以使用 Ctrl + C ,而消息框具有焦点,但它会提供比错误消息更多的文本。
e.g。
MessageBox.Show("Message", "Message Title", MessageBoxButton.OK);
将复制并粘贴为:
---------------------------
Message Title
---------------------------
Message
---------------------------
OK
---------------------------
答案 2 :(得分:5)
如果您正在显示消息框......
System.Windows.Forms.Clipboard.SetDataObject(messageToShowInMsgBoxString, true);
会将项目复制到剪贴板。
答案 3 :(得分:5)
string msgtext = "message text";
if (MessageBox.Show(msgtext, "bla bla bla. (OK to copy)", MessageBoxButtons.OKCancel) == System.Windows.Forms.DialogResult.OK)
{ Clipboard.SetText(msgtxt); }
效果很好。
答案 4 :(得分:0)
最好的方法是使用带有可选文本控件的Window,例如文本框。我可以从经验中说,这是最简单的方法,并且不会花费太多时间或代码更改来实现。