当前位置: 首页 > news >正文

【13】C# 窗体应用WinForm——.NET Framework、WinForm、工程创建、工具箱简介、窗体属性及创建

文章目录

  • 1. WinForm工程创建 及 界面介绍
    • 1.1 WinForm工程创建
    • 1.2 窗体 Form1.cs “查看代码”
    • 1.3 打开窗体设计器
  • 2. 工具箱
  • 3. 窗体属性及创建
    • 3.1 窗体属性
    • 3.2 实例:创建一个新窗体
      • 3.2.1 添加新Windows窗体
      • 3.2.2 窗体属性配置
      • 3.2.3 设置该窗体为启动窗体

  • WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,是 C# 语言中的一个重要应用。

  • .NET 提供了大量 Windows 风格的控件和事件,可以直接拿来使用。

1. WinForm工程创建 及 界面介绍

1.1 WinForm工程创建

Visual Studio中新建项目 - 选择 Windows窗体应用(.NET Framework)
在这里插入图片描述
在这里插入图片描述

在每一个 Windows 窗体应用程序的项目文件夹中,都会有一个默认的窗体框架代码文件 Form1.cs 和 窗体代码文件 Program.cs ,其包含了工程的起始代码框架.

注:
每一个 Windows 窗体应用程序在运行时仅能指定一个启动窗体,
设置启动窗体的方式是在项目的 Program.cs 文件中的main函数中指定。
Application.Run(new Form1());//设置WinForm的启动窗体,括号内改为要启动的窗体名,如Form1

在这里插入图片描述

  • 新建WinForm工程后,Program.cs 中的默认代码框架为:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;namespace WinFormTset // 项目名
{static class Program{/// <summary>/// 应用程序的主入口点。/// </summary>[STAThread]static void Main(){Application.EnableVisualStyles(); // 配置程序样式Application.SetCompatibleTextRenderingDefault(false); // 配置控件参数Application.Run(new Form1()); // 启动WinForm程序的启动窗体 Form1}}
}

1.2 窗体 Form1.cs “查看代码”

双击 Form1.cs 弹出 Form1窗口;

在窗体设计器界面右击任意地方,选择 “查看代码” ,即可进入代码编辑界面;
在这里插入图片描述

在这里插入图片描述

1.3 打开窗体设计器

在代码中右击 - 查看设计器,即可打开窗体设计器。

在这里插入图片描述
在这里插入图片描述

2. 工具箱

菜单栏 - 视图 - 工具箱(快捷键:Ctrl +Alt +X),可查看可用的控件,

若工具箱无控件,在工具箱窗口 右击 选择”显示全部“。
在这里插入图片描述

在这里插入图片描述

在右键菜单中选择“选择项”命令,弹出如下图所示的对话框

在这里插入图片描述
在该对话框中列出了不同组件中所带的控件,如果需要在工具箱中添加,直接选中相应组件名称前的复选框即可。

如果需要添加外部的控件,则单击“浏览”按钮,找到相应控件的 .dll 或 .exe 程序添加即可。

3. 窗体属性及创建

3.1 窗体属性

在 Windows 窗体应用程序中右击窗体或控件,在弹出的右键菜单中 选择“属性”命令,弹出如下图所示的属性面板。
在这里插入图片描述

在这里插入图片描述
窗体的常用属性如下:

事件作用
Name窗体/空间的名称
WindowState获取或设置窗体的窗口状态,取值有3种,即Normal(正常)、Minimized(最小化)、Maximized(最大化),默认为 Normal,即正常显示
StartPosition获取或设置窗体运行时的起始位置,取值有 5 种,即 Manual(窗体位置由 Location 属性决定)、CenterScreen(屏幕居中)、WindowsDefaultLocation( Windows 默认位置)、WindowsDefaultBounds(Windows 默认位置,边界由 Windows 决定)、CenterParent(在父窗体中居中),默认为 WindowsDefaultLocation
Text窗口标题栏中的文字
MaximizeBox获取或设置窗体标题栏右上角是否有最大化按钮,默认为 True
MinimizeBox获取或设置窗体标题栏右上角是否有最小化按钮,默认为 True
BackColor获取或设置窗体的背景色
BackgroundImage获取或设置窗体的背景图像
BackgroundImageLayout获取或设置图像布局,取值有 5 种,即 None(图片居左显示)、Tile(图像重复,默认值)、Stretch(拉伸)、Center(居中)、Zoom(按比例放大到合适大小)
Enabled获取或设置窗体是否可用
Font获取或设置窗体上文字的字体
ForeColor获取或设置窗体上文字的颜色
Icon获取或设置窗体上显示的图标

3.2 实例:创建一个新窗体

3.2.1 添加新Windows窗体

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3.2.2 窗体属性配置

在窗体属性框内进行如下配置,在配置Backgroundimage时选择”本低资源“ - 导入指定窗体背景图片

属性属性
NameTestForm
StartPositionCenterScreen
Text第一个窗体
MaximizeBoxFalse
MinimizeBoxFalse
Backgroundimage导入指定背景图片
BackgroundlmageLayoutStretch
Size265, 347(可调整)

3.2.3 设置该窗体为启动窗体

将 Program.cs中的 Application.Run(new Form1()); 的Form1()改为要启动的窗体名称,这里改为 Form2()
在这里插入图片描述
运行测试,
在这里插入图片描述

http://www.dtcms.com/a/297292.html

相关文章:

  • Python Multiprocessing 进程池完全教程:从理论到实战
  • Qlora+DPO微调Qwen2.5
  • Python捕获异常
  • Yolov8/Yolov11实例分割训练自有数据集
  • Springboot项目实现将文件上传到阿里云
  • Python实战:数据处理与可视化的奇妙之旅
  • 双指针算法介绍及使用(下)
  • JavaScript 中 let 在循环中的作用域机制解析
  • 没有 Mac,如何上架 iOS App?多项目复用与流程标准化实战分享
  • uniapp使用css实现进度条带动画过渡效果
  • uniapp之微信小程序标题对其右上角按钮胶囊
  • golang怎么实现每秒100万个请求(QPS),相关系统架构设计详解
  • 海康SDK球机精确控制[球机预置点配置]
  • 未来之路 - eBPF 与 Cilium 如何重塑网络
  • 在kdb+x中使用SQL
  • 理解Spring中的IoC
  • 基于新型群智能优化算法的BP神经网络初始权值与偏置优化
  • WPF MVVM进阶系列教程(二、数据验证)
  • Elasticsearch-9.0.4安装教程
  • 【SpringAI实战】实现仿DeepSeek页面对话机器人(支持多模态上传)
  • MySQL-Every derived table must have its own alias
  • OpenRLHF:面向超大语言模型的高性能RLHF训练框架
  • 基于 Nginx 与未来之窗防火墙构建下一代自建动态网络防护体系​—仙盟创梦IDE
  • Java-82 深入浅出 MySQL 内部架构:服务层、存储引擎与文件系统全覆盖
  • 秋招Day19 - 分布式 - 分布式锁
  • 静默的环保革命:Deepoc具身智能如何让垃圾桶读懂垃圾的语言
  • 一道检验编码能力的字符串的题目
  • 进程控制->进程替换(Linux)
  • LLM:Day3
  • 学习嵌入式的第二十九天-数据结构-(2025.7.16)线程控制:互斥与同步