C# Winform 子窗体访问父级窗体的控件和属性
2016-05-03 10:36
791 查看
今天在做一个联系人管理的C#设计时,遇到了这个问题,我需要将父窗体中的textBox中的值传到子窗体并进行数据库查询操作,我用了new 父窗体().textBox.text;来进行值传递,然而并无卵用,经过多次试验,找到了一个比较简单的解决方法:
一、子窗体调用父窗体的静态变量
父窗体:Logout
子窗体:Affirm
父窗体文本框:tB_Logout_Username
public partial class Logout : Form { //定义一个静态变量存放父窗体中的文本框的值 public static string tB_LogoutName; //实例化子窗体的事件 private void btt_Logout_Click(object sender, EventArgs e) { //获取父窗体中的文本框的值 tB_LogoutName = tB_Logout_Username.Text; Affirm aff = new Affirm(); aff.Show(); } }
接下来要在子窗体中调用就可以直接:父窗体.变量
即:Logout.tB_LogoutName
这个方法显得比较取巧,按理说应该先找到获取父窗体的方法,然后再对其进行操作。
二、将父窗体作为属性传递给子窗体
在你的子窗体中定义public 的父窗体字段,如:
public class Affirm:Form { public Logout MyLogout; }
然后在父窗体设置其值即可,如:
public partial class Logout : Form { //定义一个静态变量存放父窗体中的文本框的值 public static string tB_LogoutName; //实例化子窗体的事件 private void btt_Logout_Click(object sender, EventArgs e) { //获取父窗体中的文本框的值 //tB_LogoutName = tB_Logout_Username.Text; Affirm aff = new Affirm(); aff.MyLogout=this; aff.Show(); } }
这样,父窗体中公开的成员你都可以在子窗体中访问,使用。
您可能感兴趣的文章:
相关文章推荐
- c#调用COM组件
- C#实现把指定数据写入串口
- C#动态创建button的方法
- C#中抽象方法与虚拟方法的区别
- c#中虚函数的相关使用方法
- C#实现给图片加水印的方法
- winform绑定快捷键的方法
- C#使用加边法计算行列式的值
- C#实现多线程的同步方法实例分析
- C#中尾递归的使用、优化及编译器优化
- C#中的delegate委托类型基本学习教程
- C#实现子窗体与父窗体通信方法实例总结
- C#通用邮件发送类分享
- 举例讲解C#中自动实现的属性
- C#中this的用法集锦
- C#数据结构之顺序表(SeqList)实例详解
- C#.NET获取拨号连接的宽带连接方法
- C#异步绑定数据实现方法
- C#实现AddRange为数组添加多个元素的方法
- C#中Equality和Identity浅析