Visual C#中父窗口和子窗口之间实现控件互操作
在.NET 1.0和1.1的版本中,我们要实现父窗口和子窗口之间的互操作,有两种简单的方法。
第一种,在主窗体类中定义一个静态成员,来保存当前主窗体对象,例如:
然后在主窗体构造函数中,给静态成员初始化,如下:
那么在子窗体中调用父窗体,可以通过“主窗体类名. pCurrentWin”来操作当前的主窗体。
第二种,是在子窗体中定义一个私有成员,来保存当前主窗体对象,例如:
然后在子窗体构造函数中,加一参数,如下:
{
pParentWin = WinMain;
//Other code
}
在主窗体创建子窗体的时候,要把this作为参数来构造子窗体,这样在子窗体中调用父窗体,可以直接用“this.pParentWin”就可以了
不过以上所作的,只是让你能够访问当前主窗体对象,那么如何操作控件,很多人直接修改控件的成员访问符,即把“private”改为“public”,我觉得这样破坏了本身类的封装,所以我比较喜欢的做法是增加公有属性或方法来供调用,例如:
{
get{ return btn.Text;}
set{ btn.Text = value;}
}
public void Button_Click()
{
this.btnDConvert.PerformClick();//Execute button click
}
虽然简单,不过略显得麻烦,在.NET 2.0版本中,也就是Visual C# 2005的版本中,我们可以直接使用Application.OpenForm["formname"].Controls("ControlName")来控制控件,可以说是非常的方便。
转载于:https://www.cnblogs.com/luyu/archive/2006/10/20/534281.html
Visual C#中父窗口和子窗口之间实现控件互操作相关推荐
- C#中父子窗口之间实现控件互操作
很多人都苦恼于如何在子窗体中操作主窗体上的控件,或者在主窗体中操作子窗体上的控件.相比较而言,后面稍微简单一些,只要在主窗体中创建子窗体的时候,保留所创建子窗体对象即可. 下面重点介绍前一种,目前常见 ...
- Electron中打开和关闭子窗口以及子窗口向父窗口传值
场景 用HTML和CSS和JS构建跨平台桌面应用程序的开源库Electron的介绍以及搭建HelloWorld: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/a ...
- mfc获取子窗口句柄_前端设计-JavaScript中父窗口与子窗口间的通信
父窗体与子窗体之间的通信 在之前文章讲解windows程序设计过程中,我们曾描述了windows程序窗口之间通信与控制实现方法与过程,如窗体之间参数传递等.本文主要从Web程序开发前端JavaScri ...
- 父窗口与子窗口的数据传递问题
曾经有那么一道题目是关于父窗口与子窗口的数据传递问题.我当时只知道父窗口向子窗口传递数据.不知道子窗口怎么向父窗口传递数据.今天终于把这个问题解决了,呵呵,记录一下: 我权且把原始窗口叫父窗口,把从该 ...
- iframe 父窗口和子窗口相互的调用方法集锦
一.父窗口调用iframe子窗口方法 1.HTML语法:<iframe name="myFrame" src="child.html"></i ...
- 总结JavaScript(Iframe、window.open、window.showModalDialog)父窗口与子窗口之间的操作
前些日子,一直奔波于这三种操作,想想以后会常用,干脆整理下来,供自己以后查看.也给大家分享一下! 以下面写出自己认为有用的操作和代码. 第一次在园里面写,肯定有很多不足够之处,希望大家多多指点. 一. ...
- 父窗口、子窗口和Silverlight之间的相互调用
啊哈~ 爷爷,爸爸,儿子~ 三代同堂~ 前两天做 silverlight 的东西,主页面打开一个子页面,然后子页面中包含一个 silverlight 应用程序 那难免会涉及到他们三者相互调用的问题 其 ...
- 安卓使用intent切换到同级窗口和子窗口,并从子窗口中获取返回数据
全栈工程师开发手册 (作者:栾鹏) 安卓教程全解 安卓使用intent切换窗口,并从子窗口中获取返回数据 切换到应用内部同级窗口,同时传递数据 窗口 Intent_Activity 切换到应用内同级窗 ...
- windows窗口分析,父窗口,子窗口,所有者窗口
(本文尝试通过一些简单的实验,来分析Windows的窗口机制,并对微软的设计理由进行一定的猜测,需要读者具备C++.Windows编程及MFC经验,还得有一定动手能力.文中可能出现一些术语不统一的现象 ...
最新文章
- 我们为什么要探索人脑的奥秘?
- Hawk原理:通过IEnumerable实现通用的ETL管道
- python opencv 透视变换
- jsp 页面显示格式化的日期
- composer 设置版本号_composer 安装及使用
- 信息学奥赛C++语言:输出亲朋字符串
- phpcmsV9 QQ接入 - 线下phpsso应用管理 - 踩坑篇
- 打破南北网络障碍 打造财务安全“双保险”——烟台万华借沟通CTBS实现财务大集中...
- php学习笔记0001 变量作用域
- 九、装配bean--通过properties文件注入值
- 董明珠上榜中国杰出商界女性100
- 30秒明白tcp的3次握手
- 【转载】分层开发思想与小笼包
- Web页面自动化执行,Java+Selenium3.0-Mac OS环境搭建
- THINK PHP 学习笔记20171115
- iframe高度自适应 1
- SSRF libcurl protocol wrappers利用分析
- Unity 接入科大讯飞语音sdk
- 字典写入excel_Excel中“先出式”出货的问题,以后出库太方便了
- 深度学习在视频动作识别应用
热门文章
- 小学生计算机按键分布图,人教版(新版)小学信息三下第2课《常用按键掌握牢》课件.ppt...
- php 内链接实现三表,Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
- JAVA高性能内存队列-disruptor
- Apollo添加部门
- RabbitMQ发布/订阅模式(Publish/Subscribe)
- linux下源码安装log4cxx
- java数组循环扩容_Java中实现数组动态扩容的两种方法
- Python---面向对象(一)
- Windows Server 2012配置开机启动项
- 《计算机系统:系统架构与操作系统的高度集成》——3.2 处理器实现涉及什么...