我一直在谷歌和stackoverflow搜索2小时.必须有一些我只是俯瞰.有没有一种简单的方法可以在消息框中选择文本?就在我现在调用MessageBox.Show()时,我无法复制显示的文本.为什么不?我如何设置文本可复制?
我的代码:
//catch all exceptions
catch (Exception ex)
{
MessageBox.Show(ex.Message);
//throw;
}
Run Code Online (Sandbox Code Playgroud)
我希望能够选择出现的错误消息,以便用户将其发送给我,我可以解决他们的问题.任何帮助是极大的赞赏.
编辑:不能使用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;
}
}
Run Code Online (Sandbox Code Playgroud) 我正在使用MessageBox类向用户显示错误,虽然这可能不是正确的行为,但它非常方便.这是一个触摸屏应用程序,所以我需要'ok'按钮比它大得多(诅咒我非常大的手指!).
我想如果我在对话框中增加字体大小,我应该没问题.有没有办法做到这一点?或者真的,有没有办法增加对话框的大小?
谢谢
我想在消息框中显示帮助链接.默认情况下,文本显示为不可选字符串.
使用时,MessageBox.Show()您可以选择MessageBoxButtons.可用的按钮是枚举,并为您提供"是否","确定取消"等选项.
例如,当我使用挪威语消息文本时,用户仍然会获得英语"是否".
有没有办法改变按钮的文本(在C#中),以便语言正确?我可以覆盖文本,或以某种方式设置当前的语言环境,以便我可以使用"Ja Nei"而不是"Yes No"吗?
我不想依赖在我的客户端安装.NET语言包.
如何创建无模式MessageBox?我是否必须创建自己的Windows窗体类并使用它?如果是这样,是否有一种简单的方法可以添加警告图标(而不是插入我自己的图像)并根据文本量调整大小?
您可以从Windows服务中显示消息框(或任何形式的通知)吗?无法让它发挥作用.我用了:
global::System.Windows.Forms.MessageBox.Show("A fatal error occurred. " +
ServiceName + " is now terminating.");
Run Code Online (Sandbox Code Playgroud)
但它不起作用,只是产生了一个错误.
我无法找出两个消息框之间的主要区别.System.Windows.MessageBox和之间有什么区别System.Windows.Forms.MessageBox?
有没有一种简单的方法在VB.NET中显示带有自定义按钮标题的消息框?我遇到了在托管C++中使用自定义按钮文本创建MessageBox的简单方法是什么?,在Stack Overflow存档中,但它适用于托管C++.
我试过用这种方式在MessageBox中创建一个超链接:
MessageBox.Show(
"test message",
"caption",
MessageBoxButtons.YesNo,
MessageBoxIcon.Information,
MessageBoxDefaultButton.Button1,
0,
**"http://google.com"**,
"Keyword"
);
Run Code Online (Sandbox Code Playgroud)
注意:上面的代码实际上是在另一个问题/sf/answers/128371421/中 "选择作为答案" ,但我不知道为什么它不适合我.我在关键字上收到错误 (Error 3 The * or -> operator must be applied to a pointer C:\Users\kiriti\Documents\Visual Studio 2010\Projects\TailorApplication_3\TailorApplication_3\Form1.cs 359 140 TailorApplication_3)
我有一个WPF项目,当我尝试在RowLoad事件上运行此代码我得到以下错误:
private void ParentGridView_OnRowLoaded(object sender, EventArgs e)
{
try
{
if(((RadGridView)sender).Columns != null)
{
MessageBox.Show(((RadGridView)sender).Columns.Count.ToString(CultureInfo.InvariantCulture));
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Run Code Online (Sandbox Code Playgroud)
错误:Dispatcher处理已暂停,但仍在处理消息.
请注意,GridView控件是Telerik RadGridView
messagebox ×10
c# ×6
.net ×4
winforms ×4
vb.net ×2
wpf ×2
clickable ×1
fonts ×1
gridview ×1
hyperlink ×1
localization ×1
modeless ×1
noncopyable ×1
radgridview ×1
telerik ×1
text ×1
url ×1