Возвращать пользовательские значения из диалогового окна WPF
Я использую метод Window.ShowDialog() для получения некоторых значений от пользователя. Однако в диалоговом окне будет возвращен только nullable bool.
Как я могу получить окно WPF для возврата Tuple<string,string> или любого другого типа?
Ответ 1
Вам не нужно возвращать это значение из метода ShowDialog, как описано здесь:
"Значение Nullable < (Of < (T > ) > ) типа Boolean, которое означает, что окно было закрыто пользователем".
Вы можете просто сохранить значение, которое хотите вернуть в свойстве или поле, и получить его:
window.ShowDialog();
Tuple<string, string> value = window.InputValue;
Ответ 2
Вы можете добавить новый метод в свое Окно, что-то вроде этого:
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;
}