Question

Y a-t-il un moyen d'appeler MessageBox.Show qui apparaît dans la barre des tâches?

Il serait probablement préférable de simplement créer un formulaire personnalisé et de l'afficher bien sûr, mais en tant que programmeur paresseux, je veux éviter de rétablir les icônes de notification d'erreur et d'alerte par défaut que vous obtenez avec un bon appel à l'ancienne MessageBox.Show.

Était-ce utile?

La solution

Essayez d’utiliser le MessageBoxOptions . :

MessageBox.Show("Test", "Test", MessageBoxButtons.OK, MessageBoxIcon.Information,
    MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly);

Remarque: L'utilisation de cette méthode a plusieurs effets secondaires. Consultez l'article Comment afficher une interface utilisateur à partir d'un démon .

Autres conseils

Implémentez une fenêtre IWin32Window, renvoyez le handle en tant que IntPtr.Zero (bureau), puis affichez la boîte de message avec cette fenêtre comme parent.

private static Image GetImage(MessageBoxIcon icon)
{
    switch (icon)
    {
        case MessageBoxIcon.Error:
            return System.Drawing.SystemIcons.Error.ToBitmap();
        case MessageBoxIcon.Exclamation:
            return System.Drawing.SystemIcons.Exclamation.ToBitmap();
        case MessageBoxIcon.Information:
            return System.Drawing.SystemIcons.Information.ToBitmap();
        case MessageBoxIcon.Question:
            return System.Drawing.SystemIcons.Question.ToBitmap();
    }
    return null;
} 
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top