Ookii-dialogs-wpf: تمرير مقبض نافذة Win32 إلى ShowDialog ()

تم إنشاؤها على ٢٨ أكتوبر ٢٠٢٠  ·  9تعليقات  ·  مصدر: ookii-dialogs/ookii-dialogs-wpf

أرغب في تمرير مقبض نافذة Win32 (على سبيل المثال من Microsoft Word أو Excel أو Outlook) إلى TaskDialog.ShowDialog() . لهذا ، يبدو أنه كافٍ لكسب TaskDialog.ShowDialog(IntPtr owner) public بدلاً من private .

ما رأيك في جعل هذه الطريقة public ؟ يمكنني تقديم العلاقات العامة إذا كنت تريد.

شكرا!

ال 9 كومينتر

مرحبًا @ mu88 ، من حيث المبدأ ، أنا موافق على هذا التغيير إذا كانت هناك سيناريوهات يقوم فيها GetActiveWindow بإرجاع المقبض إلى نافذة غير صحيحة IntPtr - هل هذا هو الحال؟

هل تستخدم TaskDialog من داخل وظيفة Excel الإضافية أو ما شابه ذلك؟

إذا كان الأمر كذلك ، فهل يمثل تمرير null إلى Task.ShowDialog(Window) معالجة خاطئة للمالك؟

شكرًا على عودتك بسرعة ، augustoproiete !

نحن نعمل على تطوير تطبيق WPF. يتواصل هذا التطبيق مع Excel عبر COM ويسترد مقبض نافذة Excel كـ IntPtr عبر Process.MainWindowHandle . نريد الآن إظهار TaskDialog مخصص داخل Excel - لذلك يجب أن يكون مالك مربع الحوار هو مقبض نافذة Excel. لذلك في حالتنا ، لا توجد نافذة WPF يمكنها العمل كمالك لأن Excel لا يعتمد على WPF.

لقد جربته عن طريق الاتصال بـ private TaskDialogButton ShowDialog(IntPtr owner) عبر التفكير ويعمل مثل السحر.

يبدو ذلك جيدا. سآخذ العلاقات العامة ثم إذا كنت ترغب في ذلك.

نقاط المكافأة إذا كان بإمكانك إضافة نفس الحمل الزائد إلى مربعات الحوار الأخرى أيضًا ، من أجل الاتساق.

نعم سأذهب لهذا العلاقات العامة

مغلق عبر # 19

هل يمكنك إنشاء إصدار جديد لـ NuGet ، augustoproiete ؟

اكيد @ mu88. سأقوم بدفع نسخة جديدة إلى nuget.org بحلول مساء الغد

تم نشر حزمة mu88 NuGet @ على موقع nuget.org - https://www.nuget.org/packages/Ookii.Dialogs.Wpf/1.2.0

شكرا augustoproiete ! لقد قمت بدمج الحزمة الجديدة وهي تعمل مثل السحر 🥳

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

vpenades picture vpenades  ·  4تعليقات

soulflyman picture soulflyman  ·  9تعليقات

matelich picture matelich  ·  3تعليقات

stricq picture stricq  ·  10تعليقات

mgpreston picture mgpreston  ·  4تعليقات