gpt4 book ai didi

c# - 关闭窗口返回结果

转载 作者:行者123 更新时间:2023-11-30 19:47:29 26 4
gpt4 key购买 nike

我试图在窗口对话框关闭后获取值:

public partial class MyDialogWindow: Window
{
public string selectedItem = "";
public MyDialogWindow(string selectedItem)
{
InitializeComponent();
this.selectedItem = selectedItem;
}

...
}


// To call dialog
string result = "";
MyDialogWindow dialog = new MyDialogWindow(result);
if (form.ShowDialog().Value)
{
string res = result;
}

但是 'result' 总是空的。在 winforms 中我可以得到这个结果,但在 WPF 中不能。那么如何在窗口关闭后从窗口返回结果呢?

最佳答案

字符串不像在 C# 中那样工作 - 它们是不可变的。

你可以像其他人建议的那样使用 ref 关键字让它工作,但是这只有在你在构造函数中设置 SelectedItem 时才有效,这有点不太可能!

通常的做法是让你的对话框在你的对话框上公开一个属性:

public partial class MyDialogWindow: Window
{
public string SelectedItem
{
get;
set;
{

// etc...
}

MyDialogWindow dialog = new MyDialogWindow(result);
if (form.ShowDialog().Value)
{
string res = dialog.SelectedItem;
}

这是其他对话框(例如打开/保存文件对话框)的工作方式。

关于c# - 关闭窗口返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6761926/

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