c# 子窗口如何将信息传至父窗口
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 子窗口如何将信息传至父窗口相关的知识,希望对你有一定的参考价值。
在父窗口点击一个按钮进入子窗口,当子窗口关闭时,将子窗口的一些数据传给父窗口,该怎么做呢?着急啊,求解答,谢谢大家
最简单的方式:在子窗口里将要传出来的数据写成public的,父窗口中用子窗口的实例就能访问到了。好一点的方式:申明一个委托,把委托传到子窗口中,在子窗口关闭的时候调用这个委托函数,把参数传进去就可以了,这就叫回调函数了。 参考技术A 回调委托的典型应用。
public class Form1
private void button_Click(object sender, EventArgs e)
Form2 f = new Form2();
f.GetValue+= new EventHandler(SendValue);
f.ShowDialog();
//操作form2传来的值
private void SendValue(object sender, EventArgs e)
string form2Str = sender as string;
//form2Str就是传过来的值
public class Form2
public event EventHandler GetValue;
//窗口关闭事件
private void form_Closed(object sender, EventArgs e) //参数类型不记得了,自己点出来
if (GetValue!= null)
string s = txtBox1.Text;//假如这个就是要传的值
GetValue(s, e);
本回答被提问者和网友采纳 参考技术B 百度搜一下C# winform传值,很多现成的方法和代码实例供你复制和参考
C#里在子窗口与父窗口之间进行数据传送
在C#里经常需要在子窗口与父窗口之间进行数据传送,或者调用,虽然有很多方法可以实现,但是采用委托还是比较简单和直接的方式。
所以这次针对委托来演示一下怎么样实现这种功能。
下面先来创建一个带两窗口的例子,如下图所示:
接着来看一下,创建父窗口的代码:
namespace WindowsForms_Delegate
partial class Form_Main
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
if (disposing && (components != null))
components.Dispose();
base.Dispose(disposing);
以上是关于c# 子窗口如何将信息传至父窗口的主要内容,如果未能解决你的问题,请参考以下文章