Cómo modificar de TaskDialog Mostrar llamada () para ser el bloqueo y devolver un valor cuando está cerrado?

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

  •  26-09-2019
  •  | 
  •  

Pregunta

Estoy usando la aplicación TaskDialog del WindowsAPICodePack, pero me molesta que tengo que escuchar a los controladores, haga clic en los botones, incluso para las implementaciones más básicas. Me gustaría convertir / envolverlo por lo que al igual que el viejo cuadro de mensaje que bloquea hasta que cerrado y luego devuelve un valor en función de lo que se hizo. ¿Hay algo que pueda leer por los conceptos básicos sobre cómo hacer esto? Sólo tengo ni idea de por dónde empezar, incluso, como es cierto que no estoy tan familiarizado con los fundamentos de Win32.

¿Fue útil?

Solución

En caso de que ayuda a alguien, después de leer un poco me di cuenta de que la llamada está bloqueando Mostrar ya. Con el fin de devolver un valor, he implementado un ExtendedTaskDialog<T> clase base que contiene un TaskDialog y contiene un método Show(Window) ayudante con el fin de asignar los padres del TaskDialog, y un método de public T Show(Window) abstracto. diálogos reales se derivan de esto, y derivan su propio enum para suministrar como el tipo de base, como MyDialog : ExtendedTaskDialog<MyDialogResult>. Luego, a nivel interno, botones de MyDialog Haga clic manipuladores establecen el resultado antes de llamar al método de la Close la TaskDialog interno.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top