如何修改TaskDialog其实的Show()调用是阻塞和关闭时返回一个值?

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

  •  26-09-2019
  •  | 
  •  

我使用的是WindowsAPICodePack的TaskDialog其实实现,但它的错误我,我要听点击其按钮的处理程序,即使是更基本的实现。我想转换/包裹它,以便像老的MessageBox它阻止,直到关闭并返回基于什么做的值。有什么我可以阅读有关如何做到这一点的基础?我只是不知道在哪里甚至开始,因为我固然不是熟悉Win32的基础。

有帮助吗?

解决方案

在情况下,它可以帮助别人,有些看完之后我想通了,显示呼叫已经阻塞。为了返回一个值,我实现了一个基类ExtendedTaskDialog<T>其中包含TaskDialog,并包含一个辅助Show(Window)方法,以分配TaskDialog其实的父母,和一个抽象public T Show(Window)方法。实际对话源于此,并从中获得自己的枚举提供的基本类型,像MyDialog : ExtendedTaskDialog<MyDialogResult>。然后,在内部,MyDialog的按钮的点击处理程序调用内部CloseTaskDialog方法之前设置的结果。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top