如何在MessageBox中显示textBox控件?

知道如何在MessageBox中显示textBox控件。

我正在研究winforms projcet c#。

先感谢您。

你不能。 MessageBox是一个专门用于显示消息和按钮的容器。 相反,您可以使用您想要的任何控件创建自己的表单,并在其上使用.DisplayModal()

您只需将VB.NET中的输入框添加到C#项目中即可。 首先将Microsoft.VisualBasic添加到项目References,然后使用以下代码:

 string UserAnswer = Microsoft.VisualBasic.Interaction.InputBox("Your Message ", "Title", "Default Response"); 

这应该是正常的。

最好在您的应用程序中添加一个新的表单,您可以自定义您想要的方式。

然后从需要的地方调用它。

您可以创建一个看似消息框的经典win表单,并使用Form.ShowDialog其打开为模式表单

更多信息

http://msdn.microsoft.com/en-us/library/c7ykbedk.aspx

据我所知,没有办法做到这一点。

您可以创建一个winform,将其样式更改为MessageBox并添加您自己的控件。

您无法自定义MessageBox,最好使用单独使用Windows Form设计的弹出窗口并使用其实例进行调用。

 customPopup popup = new customPopup(); popup.ShowDialog(); 

如果要访问上一个表单中的文本框或标签等,请将控件放在弹出窗体上并将其访问修饰符设置为public。

 customPopup popup = new customPopup(); popup.msgLabel.Text= "Your message"; popup.ShowDialog(); 

是的,正如krillgar所说,你应该创建自己的表格。 并且1.将表单封装在静态类或函数中,因此您可以调用MyMessageBox.Show()。 2.文本框应该具有readonly = true,因此最终用户将无法更改显示的文本,同时他们可以选择文本并复制到剪贴板。

关于第2项,我相信很多Windows构建应用程序和MS Office都使用这种方法。

解决方案在这里,您可以创建窗体并设计它,设置窗体是对话框,当您调用窗体时,它是自动显示。 在你设计的表单中,你设置了一些参数静态项目中的其他类,但是当你关闭表单设计时你应该设置,好吧,从init调用show对话框返回,你创建间隔调用时有== null返回调用,当!= null你停止回调并在类静态中使用参数吧!