初识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();
}
相关推荐
samble14 小时前
从零搭建灌装监控系统(十八):自定义控件,三色灯与状态指示
c#·wpf·mvvm·modbus·工业控制
jun_bai14 小时前
使用Aspose实现word文档合并,内容替换
windows·c#·word
字节暗面18 小时前
客户端上报不可信:游戏服务端数据校验与对局重演设计
c#·游戏开发·服务端校验·反作弊
chingho19 小时前
GitHub上这10个C#项目,不仅实用,还怪好玩的
c#·github·.net·开源项目
半亩码田20 小时前
C#转Python第5.1篇:异步编程:asyncio vs async/await,语法相似但机制不同
开发语言·python·c#
阿华田51221 小时前
Java 类加载冲突实战:解决 is not an instance of
c#·linq
samble1 天前
从零搭建灌装监控系统(十七):LiveCharts 实时温度曲线
c#·wpf·mvvm·modbus·工业控制
淡海水2 天前
02-07-原理篇-GC暂停时间的本质
开发语言·unity·c#·gc·暂停时间
小羊没烦恼!2 天前
OS X 上使用.NET开发应用程序
开发语言·前端·数据库·人工智能·c#·策略模式
Behavior2 天前
Unity 7.0 Alpha 拆解:编辑器干掉 Mono 换 CoreCLR
c#·unity3d·游戏开发