天天百科

【C#】WinForm 窗体应用程序学习笔记:进阶篇

2024-02-10 分类:随笔

TIPS:本文共有 3257 个字,阅读大概需要 7 分钟。

本文是关于C# WinForm窗体应用程序学习的第二部分笔记。在本文中,我们将继续深入探讨WinForm窗体应用程序的相关知识点和技巧。通过学习本文,读者将能够掌握WinForm窗体应用程序的开发技术,包括界面设计、控件调用、事件处理等方面的内容。文章结合实例代码和详细解释,将帮助读者更好地理解和掌握WinForm窗体应用程序开发的关键要点。如果你对C# WinForm窗体应用程序开发感兴趣,或者正在学习相关知识,那么本文将为你提供宝贵的学习参考。

WinForm常用控件

1 . Button按钮、TextBox文本框、Label文本标签

这次设计一个登陆网站时,提示用户输入登陆信息,并且点击按钮进行登陆操作的小程序。默认登陆账号为"admin",密码"adminadmin",若账号密码都一样,则可以提示“登陆成功!”;否则提示“用户名或密码错误!”。

成品如下图所示:

可以看到有两个熟悉的控件,一个是Button控件(用来响应鼠标的点击)、另一个是Label文本标签(用来显示信息),最后我们需要一个TextBox控件用来接收输入的信息。

偷个懒省个事儿,直接在昨天第一个小程序中创建一个窗体“Form2”,然后将Application.Run()方法中的参数修改为Form2窗体对象。这样点击F5运行时,出现的就是新建的Form2窗体程序了。

下图展示了具体操作步骤:

紧接着, 拖动三个控件到到Form1.cs[设计]界面。形成良好的命名习惯,其中两个Button,登陆的命名为“BtnLogin”、重置TextBox的按钮命名为“BtnClear”;

两个Lable标签分别命名为“LabId”、“LabPassword”;两个TextBox控件分别命名为“TextId”、“TextPassword”。

这里不再给出拖拽和更改文件名的Gif图,直接展示拖拽工具完成的样子……

然后编写与用户交互的逻辑的代码,点击【登陆】那个按钮,然后在右下角的属性上面点击【闪电】模样的按钮,双击“Click”,这时候会在Form2.cs文件下自动生成一个BtnLogin_Click的方法。同样的方法双击【重置】,自动生成BtnClear_Click方法。如下图所示:

然后编写我们的脚本(简单的判断,没有啥难的……不再陈述细节):

using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace first{public partial class Form2 : Form{public Form2(){InitializeComponent();}private void BtnLogin_Click(object sender, EventArgs e){//判断输入是否为空if (!String.IsNullOrEmpty(TextId.Text) && !String.IsNullOrEmpty(TextPassword.Text)){if (TextId.Text == "admin" && TextPassword.Text == "adminadmin"){MessageBox.Show("登陆成功!");}else{MessageBox.Show("用户名或密码错误!");TextPassword.Text = "";// TextId.Text = "";}}}private void BtnClear_Click(object sender, EventArgs e){TextPassword.Text = "";TextId.Text = "";}}}

至此,这个小程序已经完成了!

2 . CheckBox复选框、RadioButton单选按钮

当用户注册信息时,经常会选择兴趣爱好什么的。所以WinForm提供了两个控件,分别是CheckBox复选框,另一个是RadioButton单选按钮。其中:

CheckBox复选框:用于多项选择,他只有选中和未选中两种状态。当被选中时,其Checked属性为true、反之为false。一个窗体可以包含多个CheckBox控件,并且这些控件可以同时被选中。

RadioButton单选按钮:包括选中和未选中两种状态,当被选中时,其Checked值为true;反之为false。若一个窗体包含多个RadioButton控件位于同一组,此时只有一个控件被选中。

这次我们设计一个用户注册界面,成品如下:

新建一个窗体Form3,然后在[设计]页面完成以下注册设计。(同样为每个控件重命名,其中按钮【注册】:BtnRegis、按钮【重置】:BtnReset,单选框【男】:rdMale,单选框【女】:rdFemale、密码TextBox:Password、重复密码TextBox:RepeatPassword,其他不再贴出):

然后打开代码窗口完善一下代码:

using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace first{public partial class Form3 : Form{public Form3(){InitializeComponent();}//在主窗体初始化时,设置单选框的默认值private void Form3_Load(object sender,EventArgs e){}private void BtnRegis_Click(object sender, EventArgs e){bool flag = false;foreach(Control item in this.Controls){if(string.IsNullOrEmpty(item.Text)){flag = true;break;}}if (flag && rdMale.Checked==false && rdFemale.Checked==false){MessageBox.Show("请确定已填写全部信息!");}else if (PassWord.Text!=RepeatPassword.Text){MessageBox.Show("两次密码输入不一致!");}else{MessageBox.Show("注册成功!");}}private void Btnreset_Click(object sender, EventArgs e){//遍历窗体中所有控件foreach(Control item in this.Controls){if(item is TextBox){item.Text = "";}if(item is RadioButton){RadioButton r = (RadioButton)item;r.Checked = false;// rdMale.Checked = true;}if(item is CheckBox){CheckBox c = (CheckBox)item;c.Checked = false;}}}}}

注册页面完成!

如果觉得《【C#】WinForm 窗体应用程序学习笔记:进阶篇》对你有帮助,请点赞、收藏,并留下你的观点哦!

阅读剩余内容
网友评论
显示评论内容(10) 收起评论内容
  1. 2024-02-10 17:29零落半生ァ为谁醉╭や[江苏省网友]103.7.5.17
    WinForm的朋友,一定要看看这篇学习笔记,收获很大!
    顶3踩0
  2. 2024-02-10 17:25莞洛[河南省网友]116.135.139.73
    想要系统地学习C#
    顶40踩0
  3. 2024-02-10 17:20aaaaaaaaaaaaaaaaaaaa[广西网友]202.95.20.94
    WinForm的进阶应用有了更清晰的认识,太感谢作者分享了这么多实用的经验。
    顶3踩0
  4. 2024-02-10 17:15天空淡蓝[云南省网友]103.228.179.43
    阅读完这篇学习笔记,我对C#
    顶9踩0
  5. 2024-02-10 17:10伊若雪[湖南省网友]202.14.129.179
    WinForm的进阶知识一直是我的瓶颈,这篇学习笔记对我来说简直是及时雨啊。
    顶37踩0
  6. 2024-02-10 17:06对对哥[青海省网友]203.32.76.66
    @Sunlit学习C#
    顶0踩0
  7. 2024-02-10 17:01Sunlit[山东省网友]101.200.115.108
    WinForm的我来说,这篇学习笔记简直就是一份宝藏啊。
    顶0踩0
  8. 2024-02-10 16:56Waiting for you[辽宁省网友]101.227.237.242
    对于想要深入学习C#
    顶0踩0
  9. 2024-02-10 16:51o_sabrina[黑龙江省网友]103.33.8.175
    WinForm的进阶学习真的太有帮助了,收藏了!
    顶0踩0
  10. 2024-02-10 16:47583889562[江西省网友]203.92.177.118
    这篇学习笔记对于C#
    顶0踩0
相关阅读
小编推荐