Saya ingin meneruskan Win32 Window Handle (misalnya dari Microsoft Word, Excel atau Outlook) ke TaskDialog.ShowDialog()
. Untuk ini, tampaknya cukup untuk membuat TaskDialog.ShowDialog(IntPtr owner)
public
alih-alih private
.
Apa pendapat Anda tentang membuat metode ini public
? Saya bisa memberikan PR jika Anda mau.
Terima kasih!
Hai @mu88 , pada prinsipnya saya setuju dengan perubahan itu jika ada skenario di mana GetActiveWindow
mengembalikan pegangan ke jendela yang salah IntPtr
- apakah itu masalahnya?
Apakah menggunakan TaskDialog dari dalam add-in Excel atau serupa?
Jika demikian, apakah meneruskan null
ke Task.ShowDialog(Window)
salah menangani pemilik?
Terima kasih telah kembali begitu cepat, @augustoproiete !
Kami sedang mengembangkan aplikasi WPF. Aplikasi ini berkomunikasi dengan Excel melalui COM dan mengambil pegangan jendela Excel sebagai IntPtr
melalui Process.MainWindowHandle
. Sekarang kami ingin menampilkan TaskDialog
kustom di dalam Excel - jadi pemilik dialog harus menjadi pegangan jendela Excel. Jadi dalam kasus kami, tidak ada jendela WPF yang dapat bertindak sebagai pemilik karena Excel tidak didasarkan pada WPF.
Saya mencobanya dengan memanggil private TaskDialogButton ShowDialog(IntPtr owner)
melalui refleksi dan itu berfungsi seperti pesona.
Kedengarannya bagus. Saya akan mengambil PR kemudian jika Anda siap untuk itu.
Poin bonus jika Anda dapat menambahkan kelebihan yang sama ke dialog lain juga, untuk konsistensi.
Ya, saya akan mengerjakan PR ini
Ditutup melalui #19
Bisakah Anda membuat versi baru untuk NuGet, @augustoproiete ?
Tentu @mu88. Saya akan mendorong versi baru ke nuget.org besok malam
@mu88 Paket NuGet dipublikasikan ke nuget.org - https://www.nuget.org/packages/Ookii.Dialogs.Wpf/1.2.0
Terima kasih @augustoproiete ! Saya telah mengintegrasikan paket baru dan berfungsi seperti pesona