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

 更新时间:2015年01月10日 10:35:17   投稿:shichen2014  
这篇文章主要介绍了C#中父窗口和子窗口之间控件互操作的方法,实例分析了父窗口与子窗口互操作的技巧,需要的朋友可以参考下

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

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

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

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

复制代码 代码如下:
public static yourMainWindow pCurrentWin = null;

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

复制代码 代码如下:
pCurrentWin = this;

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

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

复制代码 代码如下:
private yourMainWindow pParentWin = null;

然后在子窗体构造函数中,加一参数,如下:

复制代码 代码如下:
public yourChildWindow( yourMainWindow WinMain )
{
  pParentWin = WinMain;
  //Other code
}

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

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

复制代码 代码如下:
public string ButtonText
{
  get{ return btn.Text;}
  set{ btn.Text = value;}
}

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

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

相关文章

  • C#操作INI配置文件示例详解

    C#操作INI配置文件示例详解

    这篇文章主要为大家详细介绍了C#操作INI配置文件示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • C#实现数据导出任一Word图表的通用呈现方法

    C#实现数据导出任一Word图表的通用呈现方法

    应人才测评产品的需求,导出测评报告是其中一个重要的环节,报告的文件类型也多种多样,其中WORD输出也扮演了一个重要的角色,本文给大家介绍了C#实现数据导出任一Word图表的通用呈现方法及一些体会,需要的朋友可以参考下
    2023-10-10
  • C# MVC 微信支付教程系列之公众号支付代码

    C# MVC 微信支付教程系列之公众号支付代码

    本篇文章主要介绍了C# MVC 微信支付教程系列之公众号支付代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • c# Newtonsoft 六个值得使用的特性(上)

    c# Newtonsoft 六个值得使用的特性(上)

    这篇文章主要介绍了c# Newtonsoft 六个值得使用的特性,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • C# SQlite操作方法小结

    C# SQlite操作方法小结

    这篇文章主要介绍了C# SQlite操作方法,较为详细的讲述了SQLite的下载与C#针对SQLite的连接、创建、与执行SQL语句等操作相关技巧,需要的朋友可以参考下
    2016-07-07
  • C# 写入XML文档三种方法详细介绍

    C# 写入XML文档三种方法详细介绍

    如何使用LINQ to XML对XML进行操作,我们分别用这三个类将同样的xml内容写入文档,需要了解的朋友可以参考下
    2012-12-12
  • 一个读写csv文件的C#类

    一个读写csv文件的C#类

    这篇文章主要为大家详细介绍了一个读写csv文件的C#类,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • 解决在Unity中使用FairyGUI遇到的坑

    解决在Unity中使用FairyGUI遇到的坑

    这篇文章主要介绍了解决在Unity中使用FairyGUI遇到的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • C#并行库Parallel类介绍

    C#并行库Parallel类介绍

    这篇文章介绍了C#并行库Parallel类,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • SQL语句删除和添加外键、主键的方法

    SQL语句删除和添加外键、主键的方法

    本文将详细介绍SQL语句删除和添加外键、主键的方法,需要的朋友可以参考下
    2012-11-11

最新评论