2010-05-12 3 views
0

WindowsAPICodePack의 TaskDialog 구현을 사용하고 있지만 기본 구현을 위해 단추의 핸들러를 클릭해야한다는 버그가 있습니다. 내가 변환/래핑하고 싶습니다 그래서 오래 된 MessageBox처럼 그것은 닫힌 때까지 차단하고 무슨 짓을했는지에 따라 값을 반환합니다. 이 작업을 수행하는 방법에 대한 기본 사항을 읽을 수있는 것이 있습니까? Win32 기반에 익숙하지 않은 나는 어디에서 시작해야할지 전혀 모릅니다.TaskDialog의 Show() 호출을 차단하고 닫을 때 값을 반환하는 방법은 무엇입니까?

답변

0

누군가 도움이되는 경우, 일부 읽기 후에 쇼 호출이 이미 차단되고 있음을 알았습니다. 값을 반환하기 위해 TaskDialog이 포함 된 기본 클래스 ExtendedTaskDialog<T>을 구현했으며 보조자 인 Show(Window) 메서드를 포함하여 TaskDialog의 부모를 할당하고 추상 public T Show(Window) 메서드를 포함했습니다. 실제 대화 상자는 이것으로부터 파생되고 기본 유형으로 제공 할 자체 열거 형을 가져옵니다 (예 : MyDialog : ExtendedTaskDialog<MyDialogResult>). 그런 다음 내부적으로 MyDialog의 단추 '클릭 처리기는 Close 메서드를 TaskDialog 호출하기 전에 결과를 설정합니다.

관련 문제