Form1和Form2的交互

比如在第二个窗体中操作第一个窗体中的TreeView,动态添加节点和子节点。

------回答---------

------其他回答(20分)---------

尽量不要这样做。控件,窗体,你在.net中看到的一切东西都是类。和一个类访问另一个类中的对象方法一样。
被访问的类,公开一个变量或属性。访问的类通过被访问类的引用访问到对应的变量或属性。
那么就2个问题:
1.如何公开属性
2.如何找到引用
公开属性:
设计界面,选择控件,查看属性。设置modifiers为public。
找到引用:
1.你可以定义静态变量,例如public static Form1 currentForm1;
当你的Form1启动后设置这个静态变量为this。则其他地方可以通过这个静态变量访问到当前Form1对象,多个的话就用数组,队列等。
2。其他n多增内聚,降低耦合的方法,比如在Form2中保存一个Form1的引用,启动时候设置,或是添加一个公共的类保存各自的引用等等方法。
3.通过遍历Application.OpenForms找到类型为Form1的对象

时间: 2024-10-29 19:09:44

Form1和Form2的交互的相关文章

form1弹窗form2的时候,固定form2的显示位置

1.                frmWireSize.StartPosition = FormStartPosition.Manual;                frmWireSize.Location = new Point(this.Location.X+260, this.Location.Y+230); 直接利用form位置,固定form2的显示位置,我是这么做的,效果达到了 form1弹窗form2的时候,固定form2的显示位置

怎么在Form1调用Form2中的成员?

第一种情况,form1和form2有关系,也就可以说成是form1里面有个事件,通过这个事件来打开form2在这个情况下这么写form2 f2 = new form2(这里写form1中的变量值)f2.show();然后在form2的构造函数中接受这个变量值 还有个最简单的方法,全局变量:这个最简单,只要把变量描述成static就可以了,在form2中直接引用form1的变量,代码如下:在form1中定义一个static变量public static int i= 9 ;Form2中的钮扣按钮如

用WebBrowser实现HTML界面的应用和交互 good

这一篇将继续讨论在使用delphi进行普通应用程序开发的时候,WebBrowser的具体应用,主要是针对使用其进行HTML界面开发的,这也是一篇我在网上找到的资料,大家如要转载,请尊重原作者的知识产权,务必著名出处. 什么应用需要HTML的界面HTML的界面有以下特点:图文混排,格式灵活,可以包含Flash.声音和视频等,实现图文声像的多媒体界面,而且易于建立和维护.另外,HTML的显示环境一般机器上都具备,通常不需要安装额外的软件.当然,HTML界面也有它欠缺的方面,即:界面控制能力有限,代码

delphi与网页交互

HTML的界面有以下特点:图文混排,格式灵活,可以包含Flash.声音和视频等,实现图文声像的多媒体界面,而且易于建立和维 护.另外,HTML的显示环境一般机器上都具备,通常不需要安装额外的软件.当然,HTML界面也有它欠缺的方面,即:界面控制能力有限,代码调试不便 ----虽然DHTML提供了比较强的编程特性,但是比起Delphi的传统的开发语言和工具来,对界面的控制能力,尤其是和数据交互时的控制能力还是稍 逊一筹. 了解了这些特点,我们就可以在实际应用开发中,适时地选择HTML技术.下面举个

winform子窗口与父窗口的交互-使用委托与事件

实现子窗口与父窗口的交互,通过父窗口调用并控制子窗口,子窗口也能控制父窗口,使用委托和事件的方法,可以实现. 1.父窗口调用子窗口,并通过子窗口控制父窗口 新建工程,创建两个窗体    显示子窗体的代码: 子窗体定义事件,父窗体订阅事件(通过子窗体修改父窗体)     2.通过子窗体控制父窗体 父窗体定义事件,子窗体订阅事件(通过父窗体修改子窗体)    3.最终结果 4.完整代码 form1.cs form2.cs 原文地址:https://www.cnblogs.com/moon-boke/

C#子窗口与父窗口交互(使用委托和事件)

目标:在子窗口Form2上单击按钮时向Form1传递一组自定义参数,并显示在父窗口Form1上. 方法:有很多方法,这里只介绍委托和事件的实现方式. 思路:Form2中定义事件,Form1创建Form2并订阅事件:Form2触发事件后传递参数到Form1,Form1处理参数. ? ? Form1代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;

分享在winform下实现模块化插件编程

其实很早之前我就已经了解了在winform下实现插件编程,原理很简单,主要实现思路就是:先定一个插件接口作为插件样式及功能的约定,然后具体的插件就去实现这个插件接口,最后宿主(应用程序本身)就利用反射动态获取实现了插件接口的类型作为合法的插件,从而完成动态加载及宿主与插件之间的互动.因为之前一段时间一直搞B/S架构开发没有时间去实践,而恰好现在公司领导要求我对我公司原有的ERP系统架构进行重整,我们的ERP系统采用的基于分布式的三层架构,核心业务逻辑放在服务端,展示层与业务层之间采用基于WEB服

Delphi 2007体验!

Delphi 2007体验! baidu 内容摘要:CodeGear(From Borland) 公司公布了最新的Delphi 2007 For Win32版本号.作为一个 Delphi 的使用者,第一时间下载.安装并进行了体验,现将一些使用感受记录例如以下 CodeGear(From Borland) 公司公布了最新的Delphi 2007 For Win32版本号.作为一个 Delphi 的使用者,第一时间下载.安装并进行了体验,现将一些使用感受记录例如以下: 注:以下的对照主要是针对Del

Delphi实现HTMLWebBrowser实现HTML界面

HTML的界面有以下特点:图文混排,格式灵活,可以包含Flash.声音和视频等,实现图文声像的多媒体界面,而且易于建立和维护.另外,HTML的显示环境一般机器上都具备,通常不需要安装额外的软件.当然,HTML界面也有它欠缺的方面,即:界面控制能力有限,代码调试不便----虽然DHTML提供了比较强的编程特性,但是比起Delphi的传统的开发语言和工具来,对界面的控制能力,尤其是和数据交互时的控制能力还是稍逊一筹. 了解了这些特点,我们就可以在实际应用开发中,适时地选择HTML技术.下面举个例子: