VisualC#窗体之间数据传递浅析

2022-10-23

在一个进行Windows应用程序开发过程中, 一个程序一般都包含有多个窗体。在程序设计时, 数据不仅在一个窗体中使用, 还要在不同的窗体之间传递。本文介绍在Visual C#中实现窗体之间数据传递的方法和具体实现。

1 Form类

Form是应用程序中所显示的任何窗口的表示形式。Form类可用于创建标准窗口、工具窗口、无边框窗口和浮动窗口。使用Form类中可用的属性, 您可以确定所创建窗口或对话框的外观、大小、颜色和窗口管理功能。Form类的事件允许您响应对窗体执行的操作。

在Visual Studio中一个窗体用partial将同一个窗体的代码分开放在两个文件中:一个存放V S自动生成的代码, 一个存放我们自己编写的代码。如图1所示。

2 窗体之间数据传递类型

窗体之间的数据传递, 一般是在窗体调用的时候发生。主要的目的是实现窗体之间的信息的传递。这种窗体之间的数据传递总体上分为两大类:一种是主调窗体访问被调窗体的数据, 另一中是被调窗体获取主调窗体的数据。这两种类型数据传递的实现方式有很多, 下面就以具体例子来展示如何实现。

2.1 主调窗体访问被调窗体的数据

窗体之间数据传递, 可以通过修改数据的访问权限来实现。下面我以被调窗体的数据向主窗体传递实现来说明。如图2所示, 是两个初始窗体的界面, 单击Sub Form窗体上的按钮, 关闭该窗体, 并且把该窗体的文本框内容传递到Form1的标签上。

Form1的相关代码如下:

Sub Form窗体中的文本框的Modifiers的属性需要设置为P u b l i c;相关代码如如下:

2.2 被调窗体获取主调窗体的数据

主调窗体向被调船体传递数据有多种方式可以实现, 上述修改数据的访问权限也可以实现, 下面我再介绍两种方法:一种通过中间全局变量进行数据传递, 一种通过修改构造函数实现数据传递。

2.2.1 全局变量进行数据传递

在一个解决方案, 两个窗体分别为Main Form和Sub Form, Main Form上的文本数据传递到S u b F o r m中, 我可以通过定义一个全局变量来进行传递。

定义一个Temple类;

在Main Form窗体的Button的Click中将数据传递到temp Str中。

在Sub Form窗体的Loaded事件中, 将temp Str中的数据赋值给文本框, 既可以实现数据的传递。

在Main Form窗体的文本框中输入数据以后, 单击按钮, Sub Form窗体的标签中显示从Main Form传递过来的数据, 效果如图3所示。

2.2.2 修改构造函数实现数据传递

实现上述功能, 我们还可以通过修改构造函数的功能实现, 代码如下:

Sub Form的构造函数我们可以重写, 通过一个参数实现数据的传递。

Main Form的Button的Click事件中将文本框的值以参数的方式传递。

3 结语

在Windows应用程序设计过程, 窗体间数据传递是在所难免的, 在使用的过程如何选择相应的数据传递方式, 要视具体情况而定。而实现的方法也有很多, 也需要根据自己项目需要选择之。

摘要:在进行Windows应用程序设计过程, 窗体之间数据传递是不可避免的。本文介绍在Visual C#中实现窗体之间数据传递的方法和具体实现。

关键词:窗体,构造函数,参数传递

参考文献

[1] 李继武, 彭德林, 等.C#语言程序设计[M].中国水利水电出版社.

[2] 黄国平.实用开发参考大全C#[M].电子工业出版社.

[3] 夏敏捷, 等.Visual C#.NET开发技术原理与实践教程[M].电子工业出版社.

上一篇:浅谈中国对外贸易现状及“双循环”下如何提高出口质量下一篇:铜仁市城乡体育软实力差异性分析