public int?AskInteger(string question, int defaultValue) { return(QueueAction <int?>(() => { var dlg = new InputDlg("Question", question, defaultValue.ToString( CultureInfo.InvariantCulture)); int result = dlg.GetPositiveInt(); return dlg.DialogResult.GetValueOrDefault() ? result : (int?)null; })); }