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

【WinForm.NET开发】Windows窗体开发概述

本文内容

  1. 介绍
  2. 为什么要从 .NET Framework 迁移
  3. 生成丰富的交互式用户界面
  4. 显示和操纵数据
  5. 将应用部署到客户端计算机

Windows 窗体是一个可创建适用于 Windows 的丰富桌面客户端应用的 UI 框架。 Windows 窗体开发平台支持广泛的应用开发功能,包括控件、图形、数据绑定和用户输入。 Windows 窗体采用 Visual Studio 中的拖放式可视化设计器,可轻松创建 Windows 窗体应用。

Windows 窗体有两种实现:

  • 基于 .NET 6+ 上运行。 Windows 窗体可视化设计器最低要求Visual Studio 2019 版本 16.8。最新版本是使用Visual Studio 2022 版本 17.4的 .NET 7 的 Windows 窗体。
  • 基于受 Visual Studio 2022、Visual Studio 2019 和 Visual Studio 2017 支持的 .NET Framework 4 实现。.NET Framework 4 是仅限 Windows 的 .NET 版本,被视为一个 Windows 操作系统组件。 此版本的 Windows 窗体随 .NET Framework 一起分发。

1、介绍

Windows 窗体是用于生成 Windows 桌面应用的 UI 框架。 它提供了一种基于 Visual Studio 中提供的可视化设计器创建桌面应用的高效方法。 利用视觉对象控件的拖放放置等功能,可以轻松生成桌面应用。

使用 Windows 窗体,可以开发包含丰富图形的应用,这些应用易于部署和更新,并且在脱机状态下或连接到 Internet 时都可正常工作。 Windows 窗体应用可以访问运行应用的计算机的本地硬件和文件系统。

2、为什么要从 .NET Framework 迁移

.NET 的 Windows 窗体提供优于 .NET Framework 的新功能和增强功能。 

2、生成丰富的交互式用户界面

Windows 窗体是用于 .NET 的 UI 技术,是一组简化读取和写入文件系统等常见应用任务的托管库。 使用类似于 Visual Studio 的开发环境时,可以创建 Windows 窗体智能客户端应用,该应用可显示信息、请求来自用户的输入以及通过网络与远程计算机通信。

在 Windows 窗体中,窗体是一种可视图面,可在其上对用户显示信息。 通常情况下,通过向窗体添加控件和开发对用户操作(如点击鼠标或按键)的响应来生成 Windows 窗体应用。 控件是离散的 UI 元素,用于显示数据或接受数据输入。

当用户对你的窗体或一个窗体控件执行了某个操作,该操作将生成一个事件。 应用通过代码对这些事件做出反应,并在事件发生时对其进行处理。

Windows 窗体包含各种可以向窗体添加的控件:显示文本框、按钮、下拉框、单选按钮甚至网页的控件。 如果某个现有控件不满足你的需要,Windows 窗体还支持使用 
UserControl类创建自己的自定义控件。

Windows 窗体具有丰富的 UI 控件,这些控件可模拟 Microsoft Office 等高端应用中的功能。 使用ToolStrip 
和MenuStrip 
控件时,可以创建包含文本和图像的工具栏和菜单、显示子菜单和托管其他控件(如文本框和组合框)。

借助 Visual Studio中的拖放式 Windows 窗体设计器,可以轻松创建 Windows 窗体应用。 只需用光标选中控件,然后将它们放置到窗体中所需的位置即可。 设计器提供诸如网格线和对齐线的工具,以便简化对齐控件的操作。 可以使用 
FlowLayoutPanel、TableLayoutPanel
 和 
SplitContainer 控件在更短的时间内创建高级窗体布局。

最后,如果必须创建自己的自定义用户界面元素,System.Drawing
 命名空间包含各种类,可用以直接在窗体上呈现线条、圆形和其他形状。

3、显示和操纵数据

许多应用必须显示数据库、XML 文件、JSON 文件、Web 服务或其他数据源中的数据。 Windows 窗体提供了一个灵活的控件(名为 
 DataGridView控件),用于以传统的行和列格式显示此类表格数据,以便使每段数据块均占据其自己的单元格。 使用DataGridView 
时,可以自定义各个单元格的外观,将任意行和列锁定在所需位置,在单元格内部显示复杂控件,此外还具有其他功能。

通过网络连接到数据源对于 Windows 窗体而言是一个简单的任务。BindingSource 
 组件表示与数据源的连接,并公开完成以下操作的方法:将数据绑定到控件、导航到上一个和下一个记录、编辑记录,以及将更改保存回原始源。BindingNavigator 
控件通过 BindingSource
 组件提供一个简单界面,可供用户在记录间导航。

可以使用 Visual Studio 中的“数据源”窗口轻松创建数据绑定控件。 窗口显示数据源,如数据库、Web 服务和项目中的对象。 可以通过将此窗口中的项拖动到项目中的窗体上来创建数据绑定控件。 还可以通过将对象从“数据源”窗口拖动到现有控件上来将现有控件与数据进行数据绑定。

可在 Windows 窗体中管理的另一类数据绑定是“设置”。 大多数应用均必须保留有关其运行时状态的某些信息(例如窗体的最后已知大小)以及用户首选项数据(例如保存的文件的默认位置)。 “应用程序设置”功能通过提供一种在客户端计算机上存储两种类型的设置的简单方法来满足这些要求。 通过使用 Visual Studio 或代码编辑器定义这些设置后,这些设置便作为 XML保留并自动在运行时读取回内存中。

4、将应用部署到客户端计算机

编写了应用后,必须将应用发送给用户,以便他们可以在自己的客户端计算机上安装和运行此应用。 使用 ClickOnce 技术时,只需进行几次点击便可以从 Visual Studio 内部署应用,然后向用户提供指向 Web 上的应用的 URL。 ClickOnce 可管理应用中的所有元素和依赖项,并确保应用正确安装到客户端计算机上。

ClickOnce 应用可以配置为仅在用户连接到网络时运行,或配置为联机和脱机时均可运行。 如果指定应用支持脱机操作,则 ClickOnce 会在用户的“开始”菜单中添加一个指向应用的链接。 然后用户便可以打开应用,而无需使用此 URL。

如果你更新应用,则会同时向你的 Web 服务器发布一个新的部署清单和应用的一个新副本。 ClickOnce 将检测到有可用更新并将升级用户的安装。 更新旧应用无需进行自定义编程。

http://www.lryc.cn/news/250456.html

相关文章:

  • WPF 简单绘制矩形
  • crui_lvgl 一个LVGL的DSL辅助工具的设想
  • 公共部门生成式人工智能的未来
  • 【报名】2023产业区块链生态日暨 FISCO BCOS 开源六周年生态大会
  • MySQL之性能分析和系统调优
  • 时间复杂度为 O(n^2) 的排序算法 | 京东物流技术团队
  • 关于前端学习的思考-内边距、边框和外边距
  • 【linux】/etc/security/limits.conf配置文件详解、为什么限制、常见限制查看操作
  • Windows系统下更新后自带的画图软件出现马赛克bug
  • [HTML]Web前端开发技术6(HTML5、CSS3、JavaScript )DIV与SPAN,盒模型,Overflow——喵喵画网页
  • SQL练习
  • 创始人于东来:胖东来员工不想上班,请假不允许不批假!
  • C++学习之路(十五)C++ 用Qt5实现一个工具箱(增加16进制颜色码转换和屏幕颜色提取功能)- 示例代码拆分讲解
  • 【STM32】EXTI外部中断
  • Linux系统的常见命令十三,显示系统进程状态、文件权限、修改文件或目录所有者和所属组命令(ps、chmod和chown)
  • Python 批量修改文件名
  • git的基本命令操作超详细解析教程
  • 【代码】两阶段鲁棒优化/微电网经济调度入门到编程
  • 【图论】重庆大学图论与应用课程期末复习资料2-各章考点(填空证明部分)(私人复习资料)
  • 基于Intel® AI Analytics Toolkits的智能视频监控系统
  • 深度学习中的注意力机制:原理、应用与实践
  • 将本地项目推送到github
  • [读论文]meshGPT
  • 反序列化漏洞详解(一)
  • 键盘打字盲打练习系列之指法练习——2
  • 小程序----使用图表显示数据--canvas
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • document
  • NodeJS(二):npm包管理工具、yarn、npx、pnpm工具等
  • day3 移出链表中值为x的节点