Comment modifier appel à être le blocage et retourner une valeur Show () de TaskDialog quand il est fermé?

StackOverflow https://stackoverflow.com/questions/2823286

  •  26-09-2019
  •  | 
  •  

Question

J'utilise la mise en œuvre de TaskDialog WindowsAPICodePack, mais il me dérange que je dois écouter de cliquer sur ses boutons gestionnaires, même pour les implémentations les plus élémentaires. Je voudrais convertir / envelopper de sorte que, comme le vieux MessageBox bloque jusqu'à la fermeture, puis retourne une valeur basée sur ce qui a été fait. Est-ce que je peux lire pour les éléments de base sur la façon de le faire? Je n'ai aucune idée où commencer même, comme je suis certes pas familier avec les fondements Win32.

Était-ce utile?

La solution

Dans le cas où il aide quelqu'un, après une lecture je me suis dit que l'appel bloque Show est déjà. Pour retourner une valeur, je une classe de base mis en œuvre ExtendedTaskDialog<T> qui contient une TaskDialog et contient une méthode Show(Window) d'aide afin d'attribuer les parents de l'TaskDialog, et une méthode abstraite de public T Show(Window). dialogues réels découlent de cela, et d'en tirer leur propre ENUM pour fournir le type de base, comme MyDialog : ExtendedTaskDialog<MyDialogResult>. Puis, à l'intérieur, les boutons de MyDialog de gestionnaires d'cliquez sur Définir le résultat avant d'appeler la méthode Close du TaskDialog l'interne.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top