• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > C#中父窗口和子窗口之间控件互操作实例

C#中父窗口和子窗口之间控件互操作实例

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了c#子窗口调用父窗口,c#子窗口向父窗口传值,c#之父,c#设置父窗体,c#父窗体打开子窗体等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了C#中父窗口和子窗口之间控件互操作的方法。分享给大家供大家参考。具体分析如下:

很多人都苦恼于如何在子窗体中操作主窗体上的控件,或者在主窗体中操作子窗体上的控件。相比较而言,后面稍微简单一些,只要在主窗体中创建子窗体的时候,保留所创建子窗体对象即可。

下面重点介绍前一种,目前常见的有两种方法,基本上大同小异:

第一种,在主窗体类中定义一个静态成员,来保存当前主窗体对象,例如:

然后在主窗体构造函数中,给静态成员初始化,如下:

那么在子窗体中调用父窗体,可以通过“主窗体类名. pCurrentWin”来操作当前的主窗体。

第二种,是在子窗体中定义一个私有成员,来保存当前主窗体对象,例如:

然后在子窗体构造函数中,加一参数,如下:
{
  pParentWin = WinMain;
  //Other code
}</div>

在主窗体创建子窗体的时候,要把this作为参数来构造子窗体,这样在子窗体中调用父窗体,可以直接用“this.pParentWin”就可以了

不过以上所作的,只是让你能够访问当前主窗体对象,那么如何操作控件,很多人直接修改控件的成员访问符,即把“private”改为“public”,我觉得这样破坏了本身类的封装,所以我比较喜欢的做法是增加公有属性或方法来供调用,例如:
{
  get{ return btn.Text;}
  set{ btn.Text = value;}
}

public void Button_Click()
{
  this.btnDConvert.PerformClick();//Execute button click
}</div>

希望本文所述对大家的C#程序设计有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C#中父窗口和子窗口之间控件互操作实例

相关文章

  • 2017-05-28结合Visual C#开发环境讲解C#中事件的订阅和取消订阅
  • 2017-05-28C#中yield return用法分析
  • 2017-05-28C#推送信息到APNs的方法
  • 2017-05-28C#导出数据到CSV文件的通用类实例
  • 2017-05-28c#委托详解和和示例分享
  • 2017-05-28C#简单实现子窗体向父窗体传值的方法
  • 2017-05-28理解C#中参数的值和引用以及传递结构和类引用的区别
  • 2017-05-28C#读取计算机CPU及HDD信息的方法
  • 2017-05-28C#虚方法的声明和使用实例教程
  • 2017-05-28基于运算符重载的那些事

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C#基础 延迟加载介绍与实例
    • 举例讲解C#中自动实现的属性
    • c#封装百度web服务geocoding api 、百度坐标转换示例
    • C#正则表达式使用方法示例
    • C#利用iTextSharp添加PDF水印
    • C#实现把彩色图片灰度化代码分享
    • 关于c#中枚举类型支持显示中文的扩展说明
    • C#用链式方法表达循环嵌套
    • C# L型棋牌覆盖实现代码与效果
    • WPF换肤设计原理浅析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有