2009-06-11 60 views
0

我有一個EXE(app.exe)在C#DLL(lib.dll)中調用COM公開方法。 Lib.dll顯示一個對話框。在WinForms和C#中設置對話框的所有者?

如何讓對話框(不是Windows消息框)將app.exe識別爲所有者,以便app.exe最小化時,lib.dll對話框也是如此?

該對話框不能爲模態。

這是Winforms可以解決的問題嗎?我更喜歡Winforms解決方案,但如果需要的話,將會滿足於XAML解決方案。

回答

2

我假設你的C#Dll只是創建一個窗體的實例並調用.Show()方法。如果是這樣的話,那麼在你的COM暴露方法中應該使用一個hWnd參數並將表單所有者設置爲該hWnd。

+1

......當然!對於那個很抱歉。 ;) – Jason 2009-06-11 20:32:49