窗体间传值

本文介绍了Windows窗体应用程序中父窗体与子窗体之间的数据传递方法,包括从父窗体到子窗体及从子窗体返回父窗体的数据传递技巧。文中详细解释了通过属性、构造函数和委托等方式实现的双向数据交换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、从父窗体传到子窗体

 

//通过子窗体的属性来传递值
ChildForm form = new ChildForm();
form.FormValue1 
= this.value1;
form.FormValue2 
= this.value2;
form.ShowDialog();

Class ChildForm
{
 
private string formValue1;
 
private  string formValue2;
public string FormValue1
{
set
{
this.formValue1= value;
}

}

public string FormValue2
{
   
set
{
       
this.formValue2 = value;
   }

}

}


//通过向子窗体的构造函数传参数来传值
ChildForm form = new ChildForm(this.value1,this.value2);
form.ShowDialog();

Class  ChildForm
{
private  formValue1;
private formValue2;
public ChildForm(string value1,string value2)
{
    
this.formValue1 = value1;
    
this.formValue2 = value2;
}


}

2、从子窗口传值到父窗口

 

//直接调用父窗口的函数
Class ChildForm
{
private Form form;//父窗体
    private void SendToParent()
{
   
string value1 = string.Empt;
  
string value2 = string.Empt;
    (ParentForm)form.Send(value1,value2);
  }

}




Class   ParentForm
{

   
public void Send(stirng value1,string value2)
{
   
// ……
}

}

 

 

//根据委托来传递值
public delegate void SetValueGate(string value1,string value2);
Class ChildForm
{
public SetValueGate set;
private void Save_Ok()
{
string value1 = "vv";
string value2 = "ww";
    if(set!=null)
  set(value1,value2);
}
}

ParentForm:

ChildForm form = new ChildForm();

form.set+=new SetValueGate(setvv);

private void setvv(string value1,string value2)

{

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值