小例子(二)、winform窗体间的关系

写一个关于winform窗体间的关系

1、登陆,思路:登陆后隐藏登陆窗体,关闭Form2时结束整个应用程序。

1        //登陆窗体
2        private void button2_Click(object sender, EventArgs e)
3         {
4             Form2 fr = new Form2();
5             this.Visible = false;//隐藏窗体
6             fr.Show();
7         }
1       //注册一个关闭时结束程序的事件,FormClosing
2         private void Form2_FormClosing(object sender, System.Windows.Forms.FormClosingEventArgs e)
3         {
4             Application.Exit();//结束整个程序
5         }

2、通过Form2关闭,已经打开的Form3窗体。

    1,创建一个Class类

1      public static class Class1
2     {
3         public static Form3 f3;//存form3
4     }

    2,在form3加载时,将class类中的f3赋值

1         private void Form3_Load(object sender, EventArgs e)
2         {
3             Class1.f3 = this;//将form3的对象放在class类中
4         }

    3,在form2中直接关闭class中的f3即可关闭Form3

1         private void button4_Click(object sender, EventArgs e)
2         {
3             Class1.f3.Close();//关闭Form3
4         }

3、通过打开的form2刷新已经开启的form4(其实直接在2的基础上加了个关闭再打开)

1         private void button2_Click(object sender, EventArgs e)
2         {
3             Class1.f4.Close();//先关闭form4
4             Form4 fr = new Form4();
5             fr.Show();//再打开form4
6         }

上图:

 
时间: 2024-10-23 17:58:27

小例子(二)、winform窗体间的关系的相关文章

指针与二维数组间的关系

1.四种表示a[i][j]的形式是等价的: a[i][j]==*(a[i]+j)==*(*(a+i)+j)==(*(a+i))[j] 2.通过行指针p引用二维数组a的元素a[i][j]的方法可用以下4种等价形式: p[i][j]==*(p[i]+j)==*(*(p+i)+j)==(*(p+i))[j] 3.对指向二维数组的行指针p进行初始化的方法: p=a 或p=&a[0] 4.对指向二维数组的列指针进行初始化的方法(以下三种方法等价): p=a[0] 或 p=*a 或 p=&a[0][0

C# winform窗体间传值(使用委托或事件)

窗体间传值 今天得空,刚好看到网上好多人再找winform窗体间传值的问题,由于昨天项目的优化的感觉不错,就写了个C# winform窗体间传值的demo,希望能给需要的人的带来帮助: 工程的源代码地址:https://github.com/yes-or-no/WinFormTransValueDemoByDelOrEvent.git C#winform窗体间传值,三种方法示例,注释详细.使用方法:使用vs2013打开编译运行即可: 工程中总共介绍了三种方法:###方法1:通过保存对象的引用调用

WinForm窗体间如何传值

窗体间传递数据,无论是父窗体操作子窗体,还是子窗体操作符窗体,有以下几种方式: 公共静态变量: 使用共有属性: 使用委托与事件: 通过构造函数把主窗体传递到从窗体中: 一.通过静态变量 特点:传值是双向的,实现简单 实现代码如下: 在一个app类中定义一个静态成员value public class app { public static string value; } 在窗体Form1中这样调用 app.value = "f2"; //给静态成员赋值 new Form2 ( ).Sh

winform 窗体间传值

WinForm 两窗体之间传值实例 2010-12-27 22:10:11|  分类: 学业|举报|字号 订阅 下载LOFTER我的照片书  | 窗体Form1和Form2 Form2由Form1打开(1.模式窗体 2.非模式) Form2的TextBox值传回Form1的TextBox中 Form1:       public partial class Form1 : Form         {             public Form1()             {       

winform窗体间传值

1.通过构造函数 特点:传值是单向的(不可以互相传值),实现简单 实现代码如下: 在窗体Form2中 int value1; string value2; public Form2 ( int value1 , string value2 ) { InitializeComponent ( ); this.value1 = value1; this.value2 = value2; } 在窗体Form1中这样调用 new Form2 ( 111 , "222" ).Show ( );

c# winform 窗体间的传值

1.父窗体传值给子窗体: 父窗体: 1 Frm现金银行编码 frm = new Frm现金银行编码(1,0); 2 frm.Owner = this; 3 frm.ShowDialog(); 子窗体: 1 int type, index = 0; 2 public Frm现金银行编码(int ty,int ind) 3 { 4 InitializeComponent(); 5 type = ty; 6 index = ind; 7 } 数据更新: 1 private void Renovate(

winform 窗体间的传值(转)

原文:   https://blog.csdn.net/e_wsq/article/details/7714031 源码:  https://github.com/SHAREVIEW/winform_valnue-from-form-2-form_20190919.git 在WinForm之间传值有很多种方法,在这里我用的是delegate and event进行传值.新建一个WindowsApplication,创建两个WinForm.其实它们就是两个类.每个WinForm中各加入一个Butt

WinForm窗体间如何传值的几种方法佐谆茁住追驻

position:static(静态定位) 当position属性定义为static时,可以将元素定义为静态位置,所谓静态位置就是各个元素在HTML文档流中应有的位置 podisition定位问题.所以当没有定义position属性时,并不说明该元素没有自己的位置,它会遵循默认显示为静态位置,在静态定位状态下无法通过坐标值(top,left,right,bottom)来改变它的位置. position:absolute(绝对定位) 当position属性定义为absolute时,元素会脱离文档流

WinForm窗体间如何传值的几种方法

position:static(静态定位) 当position属性定义为static时,可以将元素定义为静态位置,所谓静态位置就是各个元素在HTML文档流中应有的位置 podisition定位问题.所以当没有定义position属性时,并不说明该元素没有自己的位置,它会遵循默认显示为静态位置,在静态定位状态下无法通过坐标值(top,left,right,bottom)来改变它的位置. position:absolute(绝对定位) 当position属性定义为absolute时,元素会脱离文档流