gpt4 book ai didi

c# - 从子窗口传递到父窗口

转载 作者:太空狗 更新时间:2023-10-29 23:10:05 28 4
gpt4 key购买 nike

我想问一下,

我有一个名为 MainWindow 的窗口和另一个名为 ImportForm 的窗口。在 MainWindow 我调用

private void generate_Window(int num_chart) 
{
Window ownedWindow = new ImportForm(num_chart);
ownedWindow.Owner = this;
ownedWindow.Show();
}

在子窗口中,我制作了一些东西并生成了一些变量。像 var1,var2,var3。

我想在子窗口关闭时将 var1var2var3 返回到 MainWindow 并调用假设一个函数 import_chart(var1, var2, var3)..

任何帮助都会得到提示。谢谢

最佳答案

这似乎是一个尴尬的设计选择。不管怎样,你可以这样做:

主窗口.cs:

private void generate_Window(int num_chart)
{
Window ownedWindow = new ImportForm(num_chart, import_chart);
ownedWindow.Owner = this;
ownedWindow.Show();
}

private void import_chart(int n, string s, bool b)
{
//Do something
}

导入表单.cs:

private Action<int, string, bool> callback;
public ImportForm(int num_chart, Action<int, string, bool> action)
{
InitializeComponent();
Closed += ImportForm_Closed;
callback = action;
}

private void ImportForm_Closed(object sender, EventArgs e)
{
callback(0, "Test", false);
}

只需将 Action 更改为您需要的参数类型(并调整 ImportForm_Closed(...) 以使用它们)。

如果有任何不清楚的地方,请告诉我。

关于c# - 从子窗口传递到父窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8590055/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com