创建一个C# WinForm应用程序的步骤

news2024/11/26 11:26:12
  1. 创建项目
  2. 界面设计
  3. 设置属性
  4. 编写代码
  5. 保存项目
  6. 运行程序

1. 新建项目

在这里插入图片描述
默认情况下,项目名称和解决方案名称是保持一致的,用户也可以修改成不一样的。一个解决方案下面是可以包含多个项目的,比如和应用程序相关的数据结构项目、一些资源等。

点击 “确定”,新建项目。
在这里插入图片描述

新建的项目包含

  • Properities:项目属性

  • 引用:项目需要用到的一些 dll文件等。

  • App.Config:应用程序的配置文件,与数据库交互可以在这里配置连接字符串,默认有以下内容:
    在这里插入图片描述

  • Form1.cs:默认生成的窗体文件,包含它的设计页面 Form1.Designer.cs 和代码页面
    在这里插入图片描述
    在这里插入图片描述

  • Program.cs:应用程序的主入口点
    在这里插入图片描述

2. 界面设计 —— 拖控件,布局

菜单栏 “视图” → “工具箱”
快捷键:Ctrl+Alt+X

在这里插入图片描述

往窗体中拖三个控件:Label,TextBox,Button,如下:

在这里插入图片描述

3. 设置窗体/控件的属性

右键 窗体/控件 → 属性 → 弹出属性界面
在这里插入图片描述
Text属性的值:窗体/控件上显示的文字(可以理解为QQ昵称)
(Name) 属性的值:代码中标识 窗体/控件时用到的名字(可以理解为QQ号)
MaximizeBox属性的值:True/False,是否可以最大化窗体
ShowIcon属性的值:True/False,是否显示窗体左上角的图标
ForeColor属性的值:前景色,页面上文字的颜色等
BackColor属性的值:背景色

将窗体的Text属性设置为:用户页面
将窗体的(Name) 属性设置为:FrmUser
将Label控件的Text属性设置为:用户名:
将TextBox控件的(Name) 属性设置为:txtUserName
将Button控件的(Name) 属性设置为:btnConfirm
将Button控件的Text属性设置为:提交
在这里插入图片描述

一个个窗体在代码中实际上就是一个个类,partial类和设计页面的类编译过后会生成一个类
在这里插入图片描述

4. 编写代码

要实现的功能:点击“提交”按钮,系统会把输入的用户名通过 MessageBox 显示出来

右键 “提交” 按钮,打开属性,把“Click”属性的值设为 btnConfirm_Click,并按回车,VS会自动跳转到btnConfirm_Click 函数的位置

在这里插入图片描述

编辑 btnConfirm_Click 函数的内容:将textBox中的文字通过 MessageBox 显示出来

在这里插入图片描述

5. 保存项目

在这里插入图片描述

6. 运行程序

第一次运行,点击 菜单“生成” → “生成解决方案”
在这里插入图片描述
点击 “启动”
在这里插入图片描述
会启动窗体 “FrmUser”,如果需要启动其他窗口,也可以写在 Program.cs 的这个地方
在这里插入图片描述

结果:

在这里插入图片描述

参考:2023年C#之WinForm零基础教程50讲

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024/4/1—力扣—删除字符使频率相同

代码实现: 思路: 步骤一:统计各字母出现频率 步骤二:频率从高到低排序,形成频率数组 步骤三:频率数组只有如下组合符合要求: 1, 0...0n 1, n...n (, 0)n...n, 1(, 0) bool equalFrequency(char…

ubuntu安装

一、安装虚拟机 https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html 下载后运行安装向导,一直Next即可 许可证: https://zhuanlan.zhihu.com/p/685829787#:~:textpro,17%E5%AF%86%E9%92%A5%EF%BC%9AMC60H-DWHD5-H80U9-6…

day5 nest商业项目初探·一(java转ts全栈/3R教室)

背景:从头一点点学起太慢了,直接看几个商业项目吧,看看根据Java的经验,自己能看懂多少,然后再系统学的话也会更有针对性。先看3R教室公开的 kuromi 移民机构官方网站吧 【加拿大 | 1.5w】Nextjs:kuromi 移民…

AI应用实战1:AI项目实战五大环节

文章目录 环节一:定义问题环节二:收集和处理数据环节三:选择机器学习模型环节四:训练模型环节五:超参数调试和性能优化1.评价模型效果的指标分类任务评估标准:回归任务评估标准:其他通用评估指标…

分公司=-部门--组合模式

1.1 分公司不就是一部门吗? "我们公司最近接了一个项目,是为一家在全国许多城市都有分销机构的大公司做办公管理系统,总部有人力资源、财务、运营等部门。" "这是很常见的OA系统,需求分析好的话&#xff0…

76、WAF攻防——信息收集识别被动探针代理池伪指纹白名单

文章目录 什么是WAF? WAF(Web Application Firewall)web应用防火墙 WAF分类: 软件型WAF 以软件的形式安装再服务器上面,可以接触到服务器上的文件,因此就可以检测服务器上是否有webshell,是否…

Javascript - 你在项目中是如何使用闭包的

难度级别:中高级及以上 提问概率:80% 很多初级开发者其实在日常工作中,很少有使用闭包的机会,但这却是一个非常高频的考点,因为对闭包不是特别了解,使用又少,久而久之,就觉得闭包是一个难点。在Javascript中,一个普通方法在执行完毕后…

【Error】Uncaught TypeError: Cannot read properties of undefined (reading ‘get’)

报错原因: 返回值为undefined 解决: vue3可用?

机场数据治理系列介绍(5)民用机场智慧能源系统评价体系设计

目录 一、背景 二、体系设计 1、评价体系设计维度 2、评价体系相关约定 3、评价指标体系框架设计 4、能源利用评价指标 5、环境友好评价指标 6、智慧管控评价指标 7、安全保障评价指标 三、具体落地措施 一、背景 在“双碳”国策之下,各类机场将能源系统建…

20240408在全志H3平台的Nano Pi NEO CORE开发板的eMMC刷Ubuntu Core 16.04

20240408在全志H3平台的Nano Pi NEO CORE开发板的eMMC刷Ubuntu Core 16.04 2024/4/8 20:46 参考资料: https://wiki.friendlyelec.com/wiki/index.php/NanoPi_NEO_Core/zh#.E5.AE.89.E8.A3.85.E7.B3.BB.E7.BB.9F [ OK ] Created slice Slice /system/getty. [ …

JavaScript - 你做过字符串反转吗

难度级别:初级及以上 提问概率:65% 例如有一个字符串本来是“abcde”,那么现在希望可以将其反转,最终的值是“edcba”,该如何做呢? 第一种是将字符串转为数组,利用数组的reverse方法实现元素反转,然后再将数组转为字符串,代码如下 …

K8s学习七(服务发现_2)

Ingress Service 主要用于集群内部的通信和负载均衡,而 Ingress 则是用于将服务暴露到集群外部,并提供灵活的 HTTP 路由规则。在实际应用中,它们通常结合使用,Service 提供内部通信和负载均衡,Ingress 提供外部访问和…

“AI+信创”两翼齐飞,实在智能全面加速自主可控实在智能RPA

近日,实在智能牵手华为昇腾、摩尔线程在信创领域展开紧密合作,共同加速推进AI和信创产业创新发展。 华为昇腾与实在智能达成昇腾原生大模型联合创新合作,基于华为昇腾AI自主创新软硬件平台全栈技术、实在智能自研RPA基础大模型解决方案能力&a…

2024年2月蓝牙耳机线上电商(京东天猫淘宝)综合热销排行榜

鲸参谋监测的综合电商平台(淘宝天猫京东)蓝牙耳机市场的销售数据已揭晓! 根据鲸参谋数据显示,今年2月份,综合电商平台上蓝牙耳机销量累计约657万副,同比去年下滑34%;销售额累计约17亿元&#x…

一条SQL查询语句的执行顺序

SQL常用字段书写顺序 SELECT:选择要查询的列。 FROM:指定数据来源,即表名。 JOIN:根据指定的连接条件将多个表连接在一起。 ON:指定连接条件,即哪些列的值匹配时,应该将两个表中的行组合在一起。…

Rsync——远程同步命令

目录 一、关于Rsync 1.定义 2.Rsync同步方式 3.备份的方式 4.Rsync命令 5.配置源的两种表达方法 二、配置服务端与客户端的实验——下载 1.准备工作 2.服务端配置 3.客户端配置同步 4.免交互数据同步 5.源服务器删除数据是否会同步 6.可以定期执行数据同步 三、关…

【HTML】简单制作一个动态变色光束花

目录 前言 开始 HTML部分 效果图 ​编辑​编辑​编辑​编辑总结 前言 无需多言,本文将详细介绍一段代码,具体内容如下: 开始 首先新建文件夹,创建一个文本文档,其中HTML的文件名改为[index.html]&a…

德兰梅尔:耐高温热销的膜元件亮相2024上海国际生物发酵展

德兰梅尔:耐高温热销的膜元件盛装亮相2024上海国际生物发酵展,8月7-9号上海新国际博览中心与您不见不散! 据了解,从成立至今,德兰梅尔一直专注膜技术、膜产品的开发生产。在中国市场上,德兰梅尔刚步入中国…

SpringBoot项目 jar包方式打包部署

SpringBoot项目 jar包方式打包部署 传统的Web应用进行打包部署,通常会打成war包形式,然后将War包部署到Tomcat等服务器中。 在Spring Boot项目在开发完成后,确实既支持打包成JAR文件也支持打包成WAR文件。然而,官方通常推荐将Sp…

【SpringCloud】Nacos 配置管理

目 录 一.统一配置管理1. 在 nacos 中添加配置文件2. 从微服务拉取配置 二.配置热更新1. 方式一2. 方式二 三.配置共享1. 添加一个环境共享配置2. 在 user-service 中读取共享配置3. 运行两个 UserApplication,使用不同的 profile4. 配置共享的优先级5. 多服务共享配…