C# TextBox
文本框 (TextBox) 是在窗体中输入信息时最常用的控件,通过设置文本框属性可以实现多行文本框、密码框等。
在窗体上输入信息时使用最多的就是文本框。
除了前面 C# Label、LinkLabel 中介绍的控件属性以外,文本框还有一些不同的属性, 如下表所示:
文本框控件最常使用的事件是文本改变事件 (TextChange),即在文本框控件中的内容改变时触发该事件。
下面通过实例来演示文本框的应用。
【实例 1】创建一个窗体,在文本框中输入一个值,通过文本改变事件将该文本框中的值写到一个标签中。
根据题目要求,首先创建一个名为 TextBoxTest 的窗体,然后在窗体上添加文本框和标签,并在文本框的文本改变事件中编写代码。
具体的代码如下:
public partial class TextBoxTest : Form { public TextBoxTest() { InitializeComponent(); } //文本框文本改变事件 private void textBox1_TextChanged(object sender, EventArgs e) { //将文本框中的文本值显示在标签中 label2.Text = textBox1.Text; } }
效果如下图所示:
从上面的运行结果可以看出,使用控件的属性和事件通过一行代码即可完成所需的功能。
【实例 2】实现简单的登录窗体。
本例中的登录窗体仅包括用户名和密码,将登录窗体命名为 LoginForm。
单击“登录”超链接标签,对文本框中输入的用户名和密码进行判断,如果用户名和密码的输入值分别为 xiaoming 和 123456,则弹出消息框提示“登录成功!”,否则提示“登录失败!”。
具体代码如下:
public partial class LoginForm : Form { public LoginForm() { InitializeComponent(); } //判断是否登录成功 private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { //获取用户名 string username = textBox1.Text; //获取密码 string password = textBox2.Text; //判断用户名密码是否正确 if ("xiaoming".Equals(username) && "123456".Equals(password)) { MessageBox.Show("登录成功!"); } else { MessageBox.Show("登录失败!"); } } }
运行窗体后输入用户名和密码,单击登录超链接标签,效果如下图:
C# Button
按钮主要用于提交页面的内容,或者是确认某种操作等。
按钮包括普通的按钮 (Button)、单选按钮 (RadioButton),本节主要讲解按钮的应用,单选按钮将在下一篇博客中为大家讲解。
按钮常用的属性包括在按钮中显示的文字 (Text) 以及按钮外观设置的属性,最常用的事件是单击事件。
【实例】实现一个简单的用户注册功能,并将提交的注册信息显示在新窗体的文本框中。
本例的用户注册界面中仅包括用户名和密码,通过单击“注册”按钮跳转到新窗体中并显示注册的用户名和密码,实现该功能分别使用 RegForm 窗体和 MainForm 窗体。
RegForm 窗体的界面如下图所示;
在注册时判断用户名和密码不能为空,并且要求两次输入的密码一致,实现的代码如下:
public partial class RegForm : Form { public RegForm() { InitializeComponent(); } //“确定”按钮的单击事件,用于判断注册信息并跳转到新窗口显示注册信息 private void button1_Click(object sender, EventArgs e) { string name = textBox1.Text; string pwd = textBox2.Text; string repwd = textBox3.Text; if (string.IsNullOrEmpty(name)) { MessageBox.Show("用户名不能为空!"); return; } else if (string.IsNullOrEmpty(textBox2.Text)) { MessageBox.Show("密码不能为空!"); return; } else if (!textBox2.Text.Equals(textBox3.Text)) { MessageBox.Show("两次输入的密码不一致!"); return; } //将用户名和密码传递到主窗体中 MainForm mainForm = new MainForm(name, pwd); mainForm.Show(); } //“取消”按钮的事件,用于关闭窗体 private void button2_Click(object sender, EventArgs e) { //关闭窗体 this.Close(); }
从上面的实例可以看出,如果需要在两个窗体中传递参数,则可以使用按钮和文本框。
结束语
各位互联网上的同事、同仁、同学们,C# 编写 WinForm 窗体应用程序(第三期)到这里就结束了。