初识Winform

什么是winform?

WinForms(Windows Forms)是Microsoft .NET框架中的一个用户界面(UI)技术,用于创建Windows应用程序。它提供了一组用于构建图形用户界面的类和控件,以及与用户交互的事件模型。

WinForms基于传统的窗体(Form)和控件(Control)的概念。你可以创建一个窗体作为应用程序的主窗口,并在窗体上放置各种控件(如按钮、文本框、标签等),以构建交互式的用户界面。

通过事件处理机制,你可以对控件的事件(如点击按钮事件、文本框输入事件等)进行响应,实现特定的功能或逻辑。WinForms提供了丰富的控件库,包括基本的UI控件(如按钮、文本框、标签、列表框等),以及高级控件(如网格视图、树视图、菜单、工具栏等),可以满足大多数应用程序的需求。

创建一个窗体应用

拖一个Label控件

csharp 复制代码
//Text 设置控件的文本
this.Label1.Text = "学习winform的第一天";

常用属性

  • Text:用于设置或获取Label中显示的文本内容。
  • ForeColor:用于设置或获取Label文本的颜色。
  • BackColor:用于设置或获取Label的背景色。
  • Font:用于设置或获取Label中文本的字体。
  • AutoSize:用于设置或获取Label是否根据内容自动调整大小。
  • BorderStyle:用于设置或获取Label的边框样式。
  • Image:用于设置或获取在Label上显示的图像。
  • ImageAlign:用于设置或获取图像在Label中的对齐方式。
  • TextAlign:用于设置或获取Label中文本的对齐方式。
  • AutoSize:用于设置或获取Label是否根据内容自动调整大小。
  • Enabled:用于设置或获取Label是否启用,即是否响应用户交互。
  • Visible:用于设置或获取Label是否可见。
  • ToolTipText:用于设置或获取当鼠标悬停在Label上时显示的工具提示文本。

拖一个Button控件

该控件是一个按钮控件 双击该控件可以给按钮绑定点击事件或者点击(上图所示的事件)

csharp 复制代码
//object sender:代表此次调用方法的控件对象
//EventArgs e:代表事件对象
private void button1_Click(object sender, EventArgs e) {
  Button btn = (Button)sender;
  //MessageBox 消息提示框
  MessageBox.Show("按钮点击了。" + btn.Name);
}

跳转到另一个窗体

显示窗体

csharp 复制代码
//首先右击该项目,点击添加,新建一个窗体(这里新窗体名字叫做test)
private void button2_Click(object sender, EventArgs e) {
  //跳转到另一个窗体
  Test test = new Test(); //实例化该窗体
  test.Show(); //显示窗体
}

隐藏当前窗体

csharp 复制代码
private void button3_Click(object sender, EventArgs e) {
  //隐藏当前窗体
  this.Hide();
}
相关推荐
SkyrimCitadelValinor4 小时前
c#中让图片显示清晰
开发语言·c#
爱吃香蕉的阿豪4 小时前
SignalR 全解析:核心原理、适用场景与 Vue + .NET Core 实战
vue.js·microsoft·c#·.netcore·signalr
@蓝莓果粒茶6 小时前
LeetCode第350题_两个数组的交集II
c++·python·学习·算法·leetcode·职场和发展·c#
8 小时前
3D碰撞检测系统 基于SAT算法+Burst优化(Unity)
算法·3d·unity·c#·游戏引擎·sat
「QT(C++)开发工程师」10 小时前
Qt C++动态库SDK在Visual Studio 2022使用(C++/C#版本)
c++·qt·c#·visual studio
中游鱼18 小时前
如何序列化和反序列化动态 XmlElement ?
windows·microsoft·c#
唐青枫1 天前
C#.NET dapper 详解
c#·.net
死也不注释1 天前
【鸡零狗碎记录】
unity·c#
Maybe_ch1 天前
.NET-键控服务依赖注入
开发语言·c#·.net
★YUI★1 天前
学习游戏制作记录(剑投掷技能)7.26
学习·游戏·unity·c#