come posso gestire l'esempio di risposta della casella di messaggio se l'utente fa clic su Sì, fare qualcosa se l'utente fa clic su NO, fa un'altra cosa?gestisce la risposta dalla finestra di messaggio C#
risposta
Esempio (leggermente modificato) da the docs:
const string message =
"Are you sure that you would like to close the form?";
const string caption = "Form Closing";
var result = MessageBox.Show(message, caption,
MessageBoxButtons.YesNo,
MessageBoxIcon.Question);
// If the no button was pressed ...
if (result == DialogResult.No)
{
//Do something for No
}
else if (result == DialogResult.Yes)
{
//Do something else for Yes
}
Addendum: Nel caso in cui siete ancora in .NET 2.0 e non hanno accesso alla parola var
, dichiarare result
come DialogResult
. Vale a dire:
DialogResult result = MessageBox.Show(...);
Missed il fatto che questo è stato etichettato con WPF, quindi se si sta utilizzando che allora si sarebbe utilizzare leggermente (ma non troppo) diverso System.Windows.MessageBox classe invece di sistema. Windows.Forms.Messagebox. L'interazione è in gran parte la stessa, ma utilizza l'enumerazione MessageBoxResult invece di DialogResult, l'enum MessageBoxImage invece di MessageBoxIcon e l'enum MessageBoxButton invece di MessageBoxButtons (plurale). Si dovrebbe essere in grado di fare qualcosa di simile:
const string message =
"Are you sure that you would like to close the form?";
const string caption = "Form Closing";
MessageBoxResult result = MessageBox.Show(message, caption,
MessageBoxButton.YesNo,
MessageBoxImage.Question);
if (result == MessageBoxResult.No)
{
// Do something for No
}
else if (result == MessageBoxResult.Yes)
{
// Do something else for Yes
}
Si dovrebbe provare a utilizzare google o msdn (i collegamenti sono selezionabili).
Ad ogni modo, è necessario controllare il valore del messaggio messageresult restituito dal metodo show. http://msdn.microsoft.com/en-us/library/ms598674.aspx
Ecco un esempio:
DialogResult userSelection = MessageBox.Show("Some question","Question",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
// Do something with userSelection
DialogResult result = MessageBox.Show("Some Text", "Title", MessageBoxButtons.YesNoCancel);
if(result == DialogResult.Yes)
{
// do something
}
Dal momento che il tag afferma WPF e NON WinForms, sarà necessario fare qualcosa di simile questo per un MessageBox:
MessageBoxResult result = MessageBox.Show("Foo Bar?", "Confirmation", MessageBoxButton.YesNoCancel);
if (result == MessageBoxResult.Yes)
{
// yeah yeah yeah stuff
}
else if (result == MessageBoxResult.No)
{
// no no no stuff
}
else
{
// forget about it
}
Inoltre i dialoghi vengono gestiti con ith diversamente in WPF pure, nota l'assenza di DialogResult
:
SomeDialog dialog = new SomeDialog();
dialog.ShowDialog();
if (dialog.DialogResult.HasValue && dialog.DialogResult.Value)
MessageBox.Show("Clicked ok");
else
MessageBox.Show("Clicked cancel");
childWindow di in WPF sono azioni asincrone. Devi gestire l'evento Chiudi e all'interno del tuo evento close puoi eseguire la tua logica.
Il migliore per me è
if (MessageBox.Show("Are you sure you want to close the window ?", "Question", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.No)
{
//do NO stuff
}
else
{
//do YES stuff
}
- 1. Come personalizzare la finestra di messaggio
- 2. Aprire la risposta su una nuova finestra
- 3. IE iframe non gestisce correttamente l'applicazione/la risposta JSON
- 4. Salta la finestra dalla cattura
- 5. Aggiorna la finestra genitore dalla finestra secondaria in javascript
- 6. Apre la finestra di dialogo dalla notifica
- 7. Come impedire un messaggio di mancata risposta sulla barra del titolo di una finestra?
- 8. cosa gestisce SIGFPE C/C++?
- 9. Mostra una finestra di messaggio da una classe in C#?
- 10. Modifica risposta JSON dalla risposta ricciolo
- 11. Jmeter variabile dalla risposta
- 12. Come aprire la seconda finestra dalla prima finestra in wpf?
- 13. Accesso al file di configurazione dalla finestra interattiva C#
- 14. Come utilizzare la finestra di messaggio nel controller MVC?
- 15. Escludi proprietà dalla risposta WebApi OData (EF) in C#
- 16. Come rimuovere le barre posteriori dalla risposta JSON in C#?
- 17. Analizza xml dalla risposta httppost
- 18. Come creare una finestra Qt come una finestra di messaggio?
- 19. Ottiene il testo evidenziato dalla finestra attiva
- 20. Perché la mia semplice applicazione C++ GUI mostra una finestra di messaggio in cinese?
- 21. Rimozione delle intestazioni dalla risposta
- 22. C# Xml in Http messaggio di richiesta messaggio Corpo
- 23. Bower install bloccato all'uscita JSON: "messaggio": "Risposta",
- 24. Google ora gestisce la messaggistica WhatsApp
- 25. Download dinamico di AngularJs dalla risposta
- 26. Passo dalla finestra figlia alla finestra padre
- 27. Stop Resharper dalla finestra di output spamming
- 28. Spegni la finestra di Windows C#
- 29. Nascondere la finestra di comando nell'applicazione C#
- 30. Ricarica finestra padre dalla finestra figlio
DialogResult non è accurato da una posizione WPF, vedere la mia risposta ... –