【WinForm】窗体之间传值的几种方式
2024-09-08 18:49:34
方法1:设置公共静态变量传值
eg:
1 public partial class mianForm
2 {
3 //声明i 为公共静态变量
4 public static string i = "It's me";
5 }
如果不设置成静态变量static,我试过,虽然可以通过创建新对象的方式使用变量i,但是i的初始值不会改变;
缺点:静态变量在类加载时分配内存,存储于方法区,一般不会被销毁,在系统不够内存的情况下会自动回收静态内存,这样就会引起全局静态错误。
方法2:使用公共变量传值
eg:
1 public partial class mainForm
2 {
3
4 public string i = "It's me";
5
6 private void button_Click(object sender, EventArgs e)
7 {
8 mainForm mainform = new mainForm();
9 mainform .i = this.i ;
10 mainform .ShowDialog();
11 }
12 }
方法3:使用委托传值,适合用于子窗体数据实时回传父窗体
(上面两种已经够我用了,此方法我还未吃透,有待以后继续研究学习)
方法4:构造参数传值
方法5:公共属性传值
参考:(25条消息) 【WinForm】—窗体之间传值的几种方式_全力奔跑,梦在彼岸-CSDN博客_winform两个窗体传值
最新文章
- bootstrap之google fonts
- Go语言实战 - revel框架教程之用户注册
- jade模板
- css学习归纳总结(二) 转
- JQuery调用Servlet实现文件下载
- python scrapy版 极客学院爬虫V2
- Android 本地加载网页与显示网络图片
- BZOJ 3732 题解
- Swift 3 新特性和迁移详解
- HDU 5047
- Git CMD - diff: Show changes between commits, commit and working tree, etc
- MySQL 使用while语句向数据表中批量插入数据
- RequiredFieldValidator控件--必填验证控件
- 《Windows编程循序渐进》——MFC封装机制详解
- 关于[LeetCode]Factorial Trailing Zeroes O(logn)解法的理解
- 数据库 -->; SQL Server 和 Oracle 以及 MySQL 区别
- <;转>;jmeter(二十一)jmeter常用插件介绍
- 求树的重心 poj 1655
- [NOIP 2015]运输计划-[树上差分+二分答案]-解题报告
- UML异步怎么表达
热门文章
- 谷歌、微软、Meta?谁才是 Python 最大的金主?
- CodeGeeX:vscode中全新的智能代码补全插件
- day07 方法重写&;super、this、static关键字&;JVM的类加载顺序题目
- 论文翻译:2022_DNS_1th:Multi-scale temporal frequency convolutional network with axial attention for speech enhancement
- cs231n__4.1 Backpropagation and Neural Network
- cs231n__3. LostFunction
- ob_DES_艺恩
- go的grpc环境源码编译安装
- DNS欺骗
- 总结开源项目中的常见坏实践(Bad Practice)