操作演示:
主窗体:
点击"打开子窗体"按钮打开另一个窗体:
子窗体中输入内容, 点击"将值传向父窗体"
下面放代码:
Main Window.xaml:
Main Window.xaml.cs:
////// MainWindow.xaml 的交互逻辑 /// public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } ////// 点击父窗体上的按钮打开子窗体 /// /// /// private void Button_Click(object sender, RoutedEventArgs e) { //实例化一个子窗体 ChildWindow child = new ChildWindow(); child.sendMessage += ReceivedMessage; child.ShowDialog(); } ////// 接收值 /// private void ReceivedMessage(string value) { ParentTb.Text = value; } }
ChildWindow.xaml:
ChildWindow.xaml.cs:
////// ChildWindow.xaml 的交互逻辑 /// public partial class ChildWindow : Window { // 在子窗体中声明一个委托(带string类型的参数的委托) public delegate void SendMessage(string str); public SendMessage sendMessage; public ChildWindow() { InitializeComponent(); } private void Button_Click(object sender, RoutedEventArgs e) { // 获取子窗体输入的值 var childText = childInput.Text; // 通过委托将输入的值传回主窗体 sendMessage(childText); } }



