欢迎来到入门教程网!

C#教程

当前位置:主页 > 软件编程 > C#教程 >

C# Winform 子窗体访问父级窗体的控件和属性

来源:本站原创|时间:2020-01-10|栏目:C#教程|点击:

今天在做一个联系人管理的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#中调用VB中Inputbox类的实现方法

栏    目:C#教程

下一篇:C#巧用DateTime预设可选的日期范围(如本年度、本季度、本月等)

本文标题:C# Winform 子窗体访问父级窗体的控件和属性

本文地址:https://www.xiuzhanwang.com/a1/C_jiaocheng/6537.html

网页制作CMS教程网络编程软件编程脚本语言数据库服务器

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:835971066 | 邮箱:835971066#qq.com(#换成@)

Copyright © 2002-2020 脚本教程网 版权所有