以前用Qt和C++Builder的时候,里面都有一个InputDialog输入框。但是到C# winform里面没有这个。那么要实现这个效果怎么办,当然也是比较容易的。
先看下效果:
点击显示输入框按钮,弹出输入框
在书入框内输入132456,然后按下:确定或者回车键,效果如下:
以上就是输入框的整个效果。
现在就上核心代码。
1、首先添加新建项:C#窗体
2、添加控件,并修改布局如下效果
修改TextBox控件name为txtString,
修改button1控件name为btnOK,Text为确定,
修改取消button2控件name为btnCancel,Text为取消。
然后在按下F7,在代FrmInputDialog类里面添加代码:
public delegate void TextEventHandler(string strText);
public TextEventHandler TextHandler;
3、双击按钮分别添加按钮事件,代码如下:
private void btnOk_Click(object sender, EventArgs e)
if (null != TextHandler)
TextHandler.Invoke(txtString.Text);
DialogResult = DialogResult.OK;
private void btnCancel_Click(object sender, EventArgs e)
DialogResult = DialogResult.Cancel;
4、添加TextBox的Key_Press事件,代码如下:
private void txtString_KeyPress(object sender, KeyPressEventArgs e)
if (Keys.Enter == (Keys)e.KeyChar)
if (null != TextHandler)
TextHandler.Invoke(txtString.Text);
DialogResult = DialogResult.OK;
5、然后在项目中添加新建项:C#类
命名为:InputDialog
然后修改InputDialog.cs中代码:
public static class InputDialog
public static DialogResult Show(out string strText)
string strTemp = string.Empty;
FrmInputDialog inputDialog = new FrmInputDialog();
inputDialog.TextHandler = (str) => { strTemp = str; };
DialogResult result = inputDialog.ShowDialog();
strText = strTemp;
return result;
以上就是自定义输入框的核心代码。
用法示例:
在按钮事件下添加代码:
string strText = string.Empty;
InputDialog.Show(out strText);
strText就是从输入框拿到的内容。就这么简单。
以前用Qt和C++Builder的时候,里面都有一个InputDialog输入框。但是到C# winform里面没有这个。那么要实现这个效果怎么办,当然也是比较容易的。先看下效果:点击显示输入框按钮,弹出输入框在书入框内输入132456,然后按下:确定或者回车键,效果如下:以上就是输入框的整个效果。现在就上核心代码。1、首先添加新建项:C#窗体2、添加控件,并修改布局如下效果修改TextBox控件name为txtString,修改button1控件name为btnOK,Text为确
在C#中,进行windows窗体应用程序编程的时候,经常需要弹出输入框,输入密码,输入文本之类的。然而,C#中没有直接弹出输入框的语句,MessageBox只能显示一段消息而不能输入。我们需要调用Microsoft.VisualBasic,使用VB中的inputbox,实现弹出输入框的功能。
1、菜单栏,选择【项目】;然后在弹出的菜单中选择【添加引用】
2、弹出“添加引用”的窗...
一开始是直接用 TextBox接收用户的输入内容,但是有时候不想在窗体上加控件,所以就想到了另一种办法,弹出一个输入框,输入并获取内容,之后输入框又消失不见,不占位置。
先要在项目中引入框架 Microsoft.VisualStudio
protected void btn_Click(object sender, EventArgs e)
string confirmMsg = "asdfsafsafsadf";
String sb =