WinForm窗体基础控件
- 标签(Lable)
- 文本框(TextBox)
- 按钮(Button)
- 列表框(ListBox)
- 多个窗体的使用
- 综合案例
标签(Lable)
标签控件一般用于显示用户不能编辑的文本或图像,该控件是用于对窗体上各种控件进行标注或说明的。
属性 | 描述 |
Name | 标签的对象名称,便于在代码中访问 |
Image | 标签上将显示的图像 |
Text | 标签上的文本 |
方法 | 描述 |
Hide() | 隐藏控件 |
Show() | 显示就控件 |
文本框(TextBox)
文本框控件一般用于获取用户输入的信息。单行文本框,多行文本框和密码文本框(比如输入密码时显示显示*号)都是使用文本框控件。
属性 | 描述 |
Name | 文本框的对象名称,便于在程序中引用 |
MaxLength | 获取或设置用户可在文本框控件中输入的最大字符数 |
Multiline | 获取或设置控件是否为多行文本框,True为多行文本框,False 相反 |
PasswordChar | 获取或者设置一个字符,在该文本框输入数据时,显示为该字符 |
ReadOnly | 获取或设置该文框中的文本是否为只读 |
TabIndex | 控件获得焦点的顺序,值越小越早获得焦点 |
Text | 文本框显示的文本,用户输入数据后,通过该属性获取数据 |
方法 | 描述 |
AppendText() | 在文本框内现有的末尾追加文本 |
Clear() | 清楚文本框内的所有文本 |
按钮(Button)
按钮提供了用户与应用程序进行互交的功能,比如用户输入数据后,单击按钮可以提交该数据给程序处理。
属性 | 描述 |
Text | 显示在按钮上的文本 |
Name | 按钮控件的对象名称 |
方法 | 描述 |
Click | 单击按钮时将执行时事件 |
列表框(ListBox)
列表框控件中的每个选项被称为项(Item)。
参数重载 | 描述 |
Show(消息内容) | 消息框内显示指定的文本 |
Show(消息内容,消息框标题文本) | 显示指定文本和标题 |
Show(消息内容,标题文本,消息框上的按钮) | 显示指定文本框,指定标题和指定的按钮 |
Show(消息内容,标题文本,消息框上的按钮,消息框显示的图标) | 显示指定文本框,指定标题,指定的按钮和图标符号 |
其中MessageBoxButtons属于按钮枚举值,设置消息框上面的哪些按钮。
成员名称 | 说明 |
OK | 消息框包含“确认”按钮 |
OKCancel | “确认”和“取消”按钮 |
AbortRetryIgnore | “中止” ,“重试”和“忽略”按钮 |
YesNoCancel | “是”,“否” 和“取消”按钮 |
YesNo | “是”和“否”按钮 |
RetryCancel | “重试”和”取消“按钮 |
MessageBoxIcon属于图标枚举值,图标部分枚举值 Information,Error, Exclamation,Question。
private void btuCancel_Click(object sender, EventArgs e)
{
DialogResult dr = MessageBox.Show("你确定要取消注册吗?", "确认取消",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
if (dr == DialogResult.Yes)
{
Application.Exit();
}
}
多个窗体的使用
想从当前窗体中显示宁一个窗体时,必须在当前窗体中创建另一个窗体的实例。
新窗体类 窗体实例名称=new 新窗体类();
只是实例化一个窗体类的对象是不能让窗体“显示”出来的,还要调用该对象的方法显示出窗体,窗体对象有两个方法可以完成该功能。
方法一:
窗体实例名称.Show(); //主窗体和子窗体之间可以任意切换,互不影响。
方法二:
窗体实例名称.ShowDialog(); //必须要操作完子窗体并关闭子窗体后才能在操作主窗体。
综合案例
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MyFirstWinForn
{
public partial class frmMain : Form
{
public frmMain()
{
InitializeComponent();
}
private void btuRegister_Click(object sender, EventArgs e)
{
string name = this.txtName.Text;
string pwd = this.txtPwd.Text;
string remark = this.txtRenark.Text;
if (name.Equals(" ")) {
MessageBox.Show("用户名不能包含空格!","内容非法");
return;
}
if(name.Length<6) {
MessageBox.Show("用户名不能少于6个字符!", "内容非法");
return;
}
if(pwd.Length<6) {
MessageBox.Show("密码不能少于6个字符!", "内容非法");
return;
}
string info = "用户名:"+name + "\r\n" +"密码:"+ pwd + "\r\n"+"备注:" + remark;
frmShow frmShow = new frmShow();
frmShow.Show();
frmShow.SetInfo(info);
}
private void btuCancel_Click(object sender, EventArgs e)
{
DialogResult dr = MessageBox.Show("你确定要取消注册吗?", "确认取消",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
if (dr == DialogResult.Yes)
{
Application.Exit();
}
else {
this.txtName.Text = "";
this.txtPwd.Text = "";
this.txtRenark.Text = "";
}
}
private void frmMain_Load(object sender, EventArgs e)
{
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MyFirstWinForn
{
public partial class frmShow : Form
{
public frmShow()
{
InitializeComponent();
}
public void SetInfo(string info) {
this.txtMessage.Text = info;
}
}
}