C#自己没有Inputbox这个类,但是Inputbox也蛮好用的,所以有两种方法可以使用
一:间接调用vb中的Inputbox功能
1。在项目中添加对Microsoft.VisualBasic引用
2。在项目中添加命名空间Using Microsoft.VisualBasic;
3。以后就可以直接使用VB中的好多类库(爽啊……)
例如:textBox1.Text=Microsoft.VisualBasic.Interaction.InputBox(“提示性文字”, “对话框标题”, “默认值”, X坐标, Y坐标);
上面的 X坐标, Y坐标 可以取值为 –1 和 -1,表示屏幕中间位置显示。
二:还可以自己写一个InputBox()这个函数。动态生成一个FORM以及TEXTBOX和BUTTON等,确定好位置,返回用户输入的字符串。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
public partial class InputBox : Form
{
private InputBox()
{
InitializeComponent();
}
public String getValue()
{
return textBox1.Text;
}
public static bool Show(String title,String inputTips, bool isPassword, ref String value)
{
InputBox ib = new InputBox();
if (title != null )
{
ib.Text = title;
}
if (inputTips != null )
{
ib.label1.Text = inputTips;
}
if (isPassword)
{
ib.textBox1.PasswordChar = '*' ;
}
if (ib.ShowDialog()==DialogResult.OK)
{
value = ib.getValue();
ib.Dispose();
return true ;
}
else
{
ib.Dispose();
return false ;
}
}
}
|
使用方法
1
2
3
4
5
6
|
String value;
if (InputBox.Show( "用户输入" , "密码:" , true , ref value))
{
//输入成功后的操作
}
|