public void Click() { m_awaitingPress = true; var dialog = KeyEntryDialogBox.Create(m_game.Language.Translate("menus.key_entry.info")); dialog.OnClosed += delegate(object sender, DialogBoxClosedEventArgs e) { m_awaitingPress = false; if (e.Result >= 0 && dialog.Result.HasValue) { m_game.User.Settings.SetKeyBind(m_binding, dialog.Result.Value); m_game.User.Settings.Save(); } m_menu.RefreshOptions(); }; m_menu.ShowDialog(dialog); }