需要的效果:窗口2关闭时,传值给窗口一。
方法一、
MainWindow.xaml.cs
yzmFrm yzmfrm = new yzmFrm(); yzmfrm.ShowDialog(); textBox3.Text = yzmfrm.textBox1.Text;
yzmFrm.xaml.cs
不用做任何设置,只需要做这个窗体中textBox1.Text的值存在,在子窗体关闭时,就能通过上面写出的主窗体的代码获取到子窗体的值。
方法二、
MainWindow.xaml.cs
//可使用静态变量或者属性 //public static string yzm; //使用静态变量 public static string yzm { get; set; } //使用属性 (推荐) private void button1_Click(object sender, RoutedEventArgs e) { yzmFrm yzmfrm = new yzmFrm(); yzmfrm.ShowDialog(); textBox3.Text = yzm ; }
yzmFrm.xaml.cs 按enter键,窗口关闭并传值给MainWindow
private void textBox1_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Enter) { //直接通过 窗体.属性名,即可赋值 MainWindow.yzm = textBox1.Text; this.Close(); } }