【发布时间】:2012-06-19 00:56:23
【问题描述】:
我正在使用Window.ShowDialog() 方法从用户那里获取一些值。但是,对话框只会返回一个可为空的布尔值。
如何让我的 WPF 窗口返回 Tuple<string,string> 或任何其他类型?
【问题讨论】:
我正在使用Window.ShowDialog() 方法从用户那里获取一些值。但是,对话框只会返回一个可为空的布尔值。
如何让我的 WPF 窗口返回 Tuple<string,string> 或任何其他类型?
【问题讨论】:
您不需要从 ShowDialog 方法返回该值,如 here 所述: “一个布尔类型的 Nullable)>) 值,表示用户如何关闭窗口”。
您可以简单地将要返回的值存储在属性或字段中并获取它:
window.ShowDialog();
Tuple<string, string> value = window.InputValue;
【讨论】:
您可以向您的窗口添加一个新方法,如下所示:
public Tuple<string, string> ShowTupleDialog()
{
var retTuple = new Tuple<string, string>();
this.ShowDialog();
// values from dialog to retTuple (maybe use
//databinding and return an already defined tuple)
return retTuple;
}
【讨论】: