Winform C# 窗体应用程序简单入门

news/2024/9/20 1:40:57/文章来源:https://www.cnblogs.com/lab-zj/p/18405996

搬运来源:https://blog.csdn.net/weixin_46262993/article/details/104169982?spm=1001.2014.3001.5502

一、什么是Winform?

WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,一般使用C#编程。C# WinForm 编程需要创建「Windows窗体应用程序」项目。
.NET 提供了大量 Windows 风格的控件和事件,我们可以直接拿来使用,上手简单,开发快速
Windows 窗体应用程序是 C# 语言中的一个重要应用,也是 C# 语言最常见的应用。这套 C# WinForm 教程将教会大家如何使用 WinForm 进行界面设计,并绑定对应的事件,开发出一个实用的客户端。

二、创建一个Winform项目(Demo)

1. 使用visual studio 2019创建一个新项目

输入项目名,选择项目位置,选择.NET框架版本,点击创建

 输入项目名,选择项目位置,选择.NET框架版本,点击创建

 在项目结构可以看到Winform项目中文件包含五个部分

Properties: 设置项目属性
Properties : 设置项目属性
引用 :设置对其他项目命名空间的引用
App.config :设置数据库的配置信息
Form1.cs :设置窗体界面以及编写逻辑代码
Program.cs :设置项目运行时的主窗体


2.创建一个新窗口
创建成功进入项目会有一个主窗口(默认Form1),如果需要添加新窗口可以点击项目,添加新窗口

 

 可以看到除了新建窗口,还可以新建类,接口等文件。

3. 添加控件
左边工具栏有一个工具箱,wWindows窗体的控件可以里面添加

 添加几个常用的输入框(TextBox),按钮(Button),表(Datagirdview),勾选框(CheckBox)等。
选中控件,右键可查询属性

 修改样式,以及控件Name,Text等
添加一个datagirdview控件,点击datagirdview,点击右上角的三角符号,进行编辑列属性

 根据每一列字段的类型来进行选择,textbox,CheckBox,Button等类型可以作为列

 在datagridview中添加一列按钮,可以按如下操作步骤进行。

 将姓名,年龄,性别分别建三个输入框,点击添加,添加到列表中。

 在上面Form1[设计]页面双击添加按钮,可以对点按钮的点击事件进行编写代码,如下是添加按钮的编码,将输入框对应的值添加到datagridview中。

private void addbtn_Click(object sender, EventArgs e)
{int index = this.dataGridView1.Rows.Add();this.dataGridView1.Rows[index].Cells[1].Value =  this.textBox1.Text.Trim();this.dataGridView1.Rows[index].Cells[2].Value =  this.textBox2.Text.Trim();this.dataGridView1.Rows[index].Cells[3].Value =  this.textBox3.Text.Trim();
}

4. 运行demo
Ctrl+S保存代码,F5运行程序,查看效果

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/794858.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SAP ABAP 选择屏幕加按钮

示例: SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE TEXT-002. SELECTION-SCREEN:BEGIN OF LINE,PUSHBUTTON 1(15) sel USER-COMMAND sel,PUSHBUTTON 17(15) unsel USER-COMMAND unsel,END OF LINE.SELECTION-SCREEN BEGIN OF LINE. PARAMETERS: c01 TYPE char1 AS CH…

国产游戏蓄力,火山引擎ByteHouse助力游戏厂商造爆款

ByteHouse具备高性能特性,在高并发、点查场景中具备显著优势,并且全面兼容ClickHouse、MySQL生态,可以实现应用平滑迁移,与游戏场景中的用户行为分析、广告效果分析、广告推荐、游戏推荐等非常匹配。更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】…

GIS学习(个人学习笔记)(永久修改属性表字段顺序的方法2——access数据库软件修改字段顺序)

当然更推荐直接在GIS中使用合并工具来调整字段顺序或者删除将shp文件导出为数据库文件 使用TableToDBASE表转 dBASE (批量)3.再用office access导入4.将2中生成的dbf文件打开 5.对需要调整顺序的字段进行编辑或者删除

08 Windows批处理之执行编译后的程序

本文是关于一个bat文件执行或调用另一种语言编写和编译的程序。实际上,这样做的语法非常简单。本文最有趣的方面是,有时正在执行的程序在bat文件中没有定义路径。bat文件如何找到可执行文件? 本文的主要重点将放在查找此类程序的两个非常重要的机制上,即当前目录和路径变量…

工地安全带识别系统

高处工地安全带识别系统选用目前的视频监控系统系统,纪录高清图像。依据图像检测,工地现场作业人员的工地安全带识别系统将识别工作人员是不是系好安全带,如果没有则立刻报警提醒。施工工地安全带识别:安全带识别系统高处作业安全带识别。高处工地安全带识别系统选用目前的…

91卫图内存不能为written

91卫图出现报错,报错信息如下:解决方法: 把91卫图助手软件目录下面的layer.bin改成layer1.bin,然后再打开软件 打开以后,图层管理器, 右键“我的图层”,点击还原所有图层,选择最早的一个时间点还原

apisix~kafka-logger插件

作用 将http请求与响应的内容发到kafka的topic,以json的形式发送存储 配置相关log_format为自定义配置字段,添加后,默认的请求响应消息将被覆盖{"_meta": {"disable": false},"batch_max_size": 1,"brokers": [{"host": …

安装mayavi命令,使用cxfreeze打包python脚本

pip install numpy出现A new release of pip is available: 23.2.1 -> 24.2 输入: python -m pip install --upgrade pip setuptools wheelpip install PyQt5pip install vtk pip install mayavi pip install scipypip install configobj 查看当前项目的依赖包:pip freeze…

工控机的重要技术:架构与功能

随着工业自动化的快速发展,工控机作为现代工业系统的重要组成部分,其核心技术的研究和应用愈发引起了各界的广泛关注。工控机,作为一种专门用于工业控制和监测的计算机系统,其架构与功能的有效设计和实现直接关系到工业生产的效率与安全。本文将从工控机的基本架构、核心功…

Kubernetes怎么进行NFS动态存储迁移

环境查看 系统环境# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) # uname -a Linux CentOS7K8SMaster01063 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux软件环境 # kubectl version Client Version…

Flutter provider和 getx 区别

前沿 Provider 和 GetX 是 Flutter 社区中常用的两种状态管理解决方案。 它们各自有不同的特点和使用场景,下面是它们的区别和示例,以便更好地理解和选择适合的状态管理方法。示例:Provider 和 GetX 的使用 1. 使用 Provider 的示例 假设我们有一个简单的计数器应用,点击按…

NVIDIA驱动,CUDA,CONDA环境安装

NVIDIA驱动安装检查驱动信息last rebootuname -rcat /var/log/apt/history.lognvidia-smill /usr/src/lsmod |grep nvidialspci |grep -i nvidiadmesg -i |grep nvidiadmesg |grep -i nvidiadmesg |grep -i nvrm dpkg --get-selections | grep linux-image查看加载内核版本zg…