【WinForm.NET开发】创建 Windows 窗体应用

本文内容

  1. 创建项目
  2. 创建应用程序
  3. 运行应用程序

本文演示创建一个具有基于 Windows 的用户界面 (UI) 的简单 C# 应用程序。

1、创建项目

首先,创建 C# 应用程序项目。 项目类型随附了所需的全部模板文件,无需添加任何内容。

  • 打开 Visual Studio。
  • 在“开始”窗口中,选择“创建新项目”。

create-new-project-dark-theme.png?view=vs-2022

  • 在“创建新项目”窗口中,为 C# 选择“Windows 窗体应用(.NET Framework)”模板 。

csharp-winform-create-a-new-project.png?view=vs-2022

 备注:如果未看到“Windows 窗体应用(.NET Framework)” 模板,则可以通过“创建新项目” 窗口安装该模板。 在“找不到所需内容?”消息中,选择“安装更多工具和功能”链接 。

not-finding-what-looking-for.png?view=vs-2022

  • 接下来,在 Visual Studio 安装程序中,选择“.NET 桌面开发”工作负载。

install-dot-net-desktop-env.png?view=vs-2022

  • 之后,在 Visual Studio 安装程序中选择“修改”按钮。 系统可能会提示你保存所有内容;如果出现提示,请按照指示进行操作。 接下来,选择“继续”以安装工作负载。 然后,返回到“创建项目”过程中的步骤 2。
  • 在“配置新项目”窗口中,在“项目名称”框中键入或输入“HelloWorld” 。 然后选择“创建”。

csharp-winform-configure-new-project.png?view=vs-2022

  • 此时,Visual Studio 将打开新项目。

2、创建应用程序

选择 C# 项目模板并为文件命名后,Visual Studio 会打开一个窗体。 窗体就是 Windows 用户界面。 通过向窗体添加控件创建“Hello World”应用程序,然后运行该应用程序。

2.1 向窗体添加按钮

  • 选择“工具箱”,打开“工具箱”弹出窗口。

csharp-winform-hello-world-project-toolbox.png?view=vs-2022

(如果没有看到“工具箱”浮出控件选项,可以从菜单栏中打开它。为此,请选择“查看”>“工具箱”。或者,按 Ctrl+Alt+X。)

  • 展开“常见控件”,然后选择“固定”图标以停靠“工具箱”窗口。

csharp-winform-toolbox-flyout-pin.png?view=vs-2022

  • 选择“按钮”控件,然后将其拖到窗体上。

csharp-winform-add-button-on-form.png?view=vs-2022

  • 在属性窗口中,找到“文本”,将名称从“Button1”更改为 Click this然后按 Enter 。

csharp-winform-button-properties-text.png?view=vs-2022

(如果没有看到“属性”窗口,可以从菜单栏打开它。为此,请选择“查看”>“属性窗口”。或者,按 F4。)

  • 在属性窗口的“设计”部分,将名称从“Button1”更改为 btnClickThis,然后按 Enter 。

csharp-winform-button-properties-design-name.png?view=vs-2022

 备注:如果按字母顺序排列了属性窗口列表,则 button1 会显示在 (DataBindings) 部分中 。

2.2 向窗体添加标签

添加创建操作的按钮控件后,我们来添加发送文本的标签控件。

  • 从“工具箱”窗口选择“标签”控件,然后将其拖到窗体上,并放到“单击此处”按钮下方 。
  • 在属性窗口的“设计”部分或“(DataBindings)”部分,将 label1 的名称更改为 lblHelloWorld,然后按 Enter 。

2.3 向窗体添加代码

  • 在“Form1.cs [设计]”窗口中,双击“单击此处”按钮,打开“Form1.cs”窗口。

(或者,可在“解决方案资源管理器” 中展开“Form1.cs” ,然后选择“Form1” 。)

  • 在“Form1.cs” 窗口中,在“private void” 行后,键入或输入 lblHelloWorld.Text = "Hello World!";,如以下屏幕截图所示:

csharp-winform-button-click-code.png?view=vs-2022

3、运行应用程序

  • 选择“启动”按钮运行应用程序。

csharp-winform-visual-studio-start-run-program.png?view=vs-2022

将出现以下几种情况。 在 Visual Studio IDE 中,“诊断工具”窗口打开,同时还会打开一个“输出”窗口 。 在 IDE 外部,会出现一个“Form1”对话框 。 其中包含“单击此处”按钮和显示“label1”的文本 。

  • 选择“Form1”对话框中的“单击此处”按钮 。 请注意,“label1”文本会更改为“Hello World!” 。

csharp-winform-form.png?view=vs-2022

  • 关闭“Form1” 对话框以停止运行应用。

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

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

相关文章

vs 安装 qt qt扩展

1 安装qt 社区版 免费 Download Qt OSS: Get Qt Online Installer 2 vs安装 qt vs tools 3 vs添加 qt添加 bin/cmake.exe 路径 3.1 扩展 -> qt versions 3.2

【设计模式-4.1】行为型——观察者模式

说明:本文介绍设计模式中行为型设计模式中的,观察者模式; 商家与顾客 观察者模式属于行为型设计模式,关注对象的行为。以商家与顾客为例,商家有商品,顾客来购买商品,如果商家商品卖完了&#…

Vue+ElementUI+C#前后端分离:监控长耗时任务的实践

想象一下,我们正在构建一个Web应用,需要实现一个数据报告的导出功能。这听起来很简单,不是吗?但是,随着深入开发,我们意识到导出过程比预期的要复杂和耗时得多。由于报告的数据量巨大,后端需要花…

PostgreSQL有意思的现象:支持不带列的表

1、前言 以前从没有试过建一张表,不带任何列。在PG中却支持这种语法。这是个什么鬼? 最近,把PG源码扒了下,简单浏览了下最近的一些merge。其中有一个fix: eeb0ebad79 ("Fix the initial sync tables with no columns.&qu…

〖大前端 - 基础入门三大核心之JS篇㊺〗- 定时器和延时器

说明:该文属于 大前端全栈架构白宝书专栏,目前阶段免费,如需要项目实战或者是体系化资源,文末名片加V!作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 从事过全栈研发、产品经理等工作&#xf…

3D场景建模工具

在线工具推荐: 三维数字孪生场景工具 - GLTF/GLB在线编辑器 - Three.js AI自动纹理化开发 - YOLO 虚幻合成数据生成器 - 3D模型在线转换 - 3D模型预览图生成服务 1. 什么是3D场景建模? 3D场景建模是一种通过计算机图形学技术,将现实世…

【Matlab】如何快速入门一项新技能-以Matlab/Simulink入门为例

目录 1. 引言 2. 背景 3. 快速学习并完成开发 3.1 了解需求,知道要干什么 3.2 了解Matlab/Simulink基本功能 第一步,查看Matlab的中文网站中文网站https://www.ilovematlab.cn/resources/对Matlab/Simulink有了一个初步认识。 3.3 实现一个最简单…

PyQt6 QDialogButtonBox组合按钮控件

锋哥原创的PyQt6视频教程: 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计34条视频,包括:2024版 PyQt6 Python桌面开发 视频教程(无废话版…

【开源威胁情报挖掘1】引言 + 开源威胁情报挖掘框架 + 开源威胁情报采集与识别提取

基于开源信息平台的威胁情报挖掘综述 写在最前面摘要1 引言近年来的一些新型网络安全威胁类型挖掘网络威胁的情报信息威胁情报分类:内、外部威胁情报国内外开源威胁情报挖掘分析工作主要贡献研究范围和方法 2 开源威胁情报挖掘框架1. 开源威胁情报采集与识别2. 开源…

软件生命周期四个阶段SDLC

软件产品生命周期:指软件产品研发全部过程、活动和任务的结构框架。 产品的生命周期一般包括四个阶段:引入期、成长期、成熟期和衰退期,在不同的阶段中,市场对产品的反应不同,其销售特点不同,因而产品管理的…

mysql数据库的配置文件在哪里

可以搜索my.ini、或者my.cnf,看看在哪个地方。 例如,我在windows系统装的mysql 8.2版本,my.ini文件不在安装目录下,而在另外一个目录下。 我的安装目录是F:\Program Files\MySQL\MySQL Server 8.2,但my.ini文件在C:\Pr…

【Leetcode题单】(01 数组篇)刷题关键点总结01【数组的遍历】

【Leetcode题单】(01 数组篇)刷题关键点总结01【数组的遍历】(4题) Easy数组的遍历485. 最大连续 1 的个数 Easy495. 提莫攻击 Easy414. 第三大的数 Easy628. 三个数的最大乘积 Easy 大家好,这里是新开的LeetCode刷题系…

JavaScript学习-1

01 基础用法 //index.html <body><!-- 行内JS --><button type"button" onclick"alert(hello)">按钮</button><!--内部JS--><script type"text/javascript">alert("你好");</script><…

vscode问题:此扩展在此工作区中被禁用,因为其被定义为在远程扩展主机中运行

mac按shiftcommandp windows按ctrlshiftP&#xff1a; 将当前项目文件夹添加进去就ok了。

Elk-filebeat

前言 Elk&#xff1a;filebeat搜集日志工具和logstash相同 Filebeat是一个轻量级的日志收集工具&#xff0c;所使用的资源比logstash部署和启动时使用的资源更小 Filebeat可以运行在非Java环境&#xff0c;他可以代理logstash在非Java环境上收集日志 Filebeat无法实现数据的…

【带头学C++】----- 九、类和对象 ---- 9.1 类和对象的基本概念----(9.1.4---9.1.6)

目录 9.1.4 设计立方体类 ​编辑 9.1.5 成员函数在类的外部实现 9.1.6 类在其他源文件的实现步骤&#xff08;实现类在不同文件的实现&#xff0c;后续引出构造函数&#xff09; 注意:类定义在同文件testclass.h中&#xff0c;而testclass.cpp是用来实现&#xff08;声明&…

Unity 简单打包脚本

打包脚本 这个打包脚本适用于做demo&#xff0c;脚本放在Editor目录下 using System; using System.Collections; using System.Collections.Generic; using System.IO; using UnityEditor; using UnityEngine;public class BuildAB {[MenuItem("Tools/递归遍历文件夹下…

K210开发板之VSCode开发环境使用中添加或删除文件(编译失败时)需要注意事项

在最初开始接触&#xff0c;将VScode和编译环境搭载好后&#xff0c;就开始运行第一个程序了&#xff0c;为了后续方便开发测试&#xff0c;这里我自己对照官方提供的例子&#xff0c;自己调试&#xff0c;写了一个简单的文件系统 后续&#xff0c;所有关于开发的源文件都在...…

SSM框架(六):SpringBoot技术及整合SSM

文章目录 一、概述1.1 简介1.2 起步依赖1.3 入门案例1.4 快速启动 二、基础配置2.1 三种配置文件方式2.2 yaml文件格式2.3 yaml读取数据方式&#xff08;3种&#xff09; 三、多环境开发3.1 yml文件-多环境开发3.2 properties文件-多环境开发3.3 多环境命令行启动参数设置3.4 多…

【LeetCode】每日一题 2023_12_3 可获得的最大点数(前缀和/滑动窗口/贪心)

文章目录 刷题前唠嗑题目&#xff1a;可获得的最大点数题目描述代码与解题思路 结语 刷题前唠嗑 LeetCode&#xff1f;启动&#xff01;&#xff01;&#xff01; 题目&#xff1a;可获得的最大点数 题目链接&#xff1a;1423. 可获得的最大点数 题目描述 代码与解题思路 …