سؤال

لقد تعلم WPF لمدة أسبوع تقريبا الآن .. ولدي سؤال أساسي:

من عرض الأعمال وعرض التنمية (خارج تجربتك) .. ما يمكن وما لا يمكن القيام به مع WPF (القدرات) ..

يرجى المحاولة أن تكون توضيحية ..

أمثلة على الإجابات غير المرغوب فيها:
"تطبيقات مستقلة تعمل بالكامل مع الكثير من الرسوم المتحركة والصور المتلألئة"

سؤال الثاني:
إذا قمت بإنشاء واجهة مستخدم XBAP للتطبيق الخاص بي، فهل يمكنني جعل واجهة المستخدم "لا تظهر" في متصفح!

إذا كنت ستجيب من البرامج التعليمية / المواقع / الكتب .. من فضلك لا نسخ معجونها مباشرة، حاول كتابة ذلك بكلماتك الخاصة ...

هل كانت مفيدة؟

المحلول

يمكنك استضافة أي شيء تم إنشاؤه إلى واجهة برمجة تطبيقات Win32 GDI / المستخدم (WinForms، عناصر تحكم ActiveX) داخل تطبيق WPF، لذا حتى لو ضربت بعض القيود مع تطبيق WPF في الغالب، يمكنك دائما استضافة بعض الضوابط القديمة داخله.

نظرا لأن 3.5 المزود بحزمة الخدمة SP1 يمكنك حتى استضافة رسومات DirectX المتحركة بسلاسة، على الرغم من أن الدعم ثلاثي الأبعاد في WPF يوفر طرقه الأكثر بساطة لتحقيق الأشياء الأكثر شيوعا).

أما بالنسبة للمقارنة، فإن الميزة الرئيسية ل WPF على WinForms هي الطريقة التي تواصلها عن كثب نموذجها القائم على المكونات الخاصة بها، لذا فإن نسبة كبيرة جدا من الضوابط قادرة على التصرف كحاويات لضوابط أخرى. تريد وضع مربع التحرير والسرد في عنصر القائمة؟ لست متأكدا لماذا سوف، ولكن يمكنك ذلك. أكثر فائدة، يمكنك وضع زر في مربع القائمة (أو عرض شجرة). هذه الأنواع من الأشياء غير ممكنة ما لم تنفذ كل عنصر تحكم قياسي من الألف إلى الياء (وهو ما يفعله WPF).

ربما تكون العيوب مؤقتة: يمكن أن تكون غير مستقرة بعض الشيء على بعض الآلات (يبدو رمز التقديم غير قادر على عرض عدم توافق السائق) ولكن هذا يتحسن مع كل حزمة خدمة. كما تم انتقاد التقديم النصي بشكل كبير - فهو أكثر قليلا من خلال ClearType Anti-Iniasing أكثر من Windows عادة ما يفعل ذلك، لذلك يشكو بعض الناس من أن يبدو ضبابيا.

(السبب من المرجح أن تكون هذه المشكلات المؤقتة هي أن Microsoft Visual Studio 2010 يعتمد WPF. لذلك هم الآن "يأكلون الكلب الخاص بهم".)

نصائح أخرى

يمكنك أن تفعل شيئا كبيرا في WPF الذي تحتاجه من تطبيق GUI. لكن هذا ليس الفائدة الحقيقية، IMHO.

واحدة من الفوائد الحقيقية ل WPF هي سرعة التطوير والبساطة، بمجرد تجاوز منحنى التعلم (وهناك منحنى تعليمي!)

المنفعة الرئيسية الأخرى، وربما أكبر واحد، هي أنها تسمح للمصممين بالعمل على العرض التقديمي، قم بعمل الكثير من الأشياء التفاعلية، وكلها باستخدام أداة صديقة لصديقة (Friendlier، على أي حال) وعدم الاضطرار إلى تقديم طلبات إلى المبرمجين. فقط عن طريق تغيير .xaml، يمكن أن يؤدي المصمم إلى تطبيق تطبيق مختلف تماما تماما، وإضافة جميع أنواع السلوكيات (تختفي الألواح، وتوسيع، جميع أنواع الأشياء الأنيقة). دون تغيير خط التعليمات البرمجية.

يمكنك النظرية القيام بأي شيء في WPF ما تريد. قارنه بتطبيق WinForms. هل هناك أي شيء لا يمكنك البناء بهذا؟ ليس صحيحا. الشيء نفسه ينطبق على WPF. إنه فقط أن WPF مناسب بشكل أفضل لبعض الأشياء، مثل الرسوم المتحركة والفيديو والرسومات والأحداث الإلكترونية. كما هو مقره XAML، فهو مناسب أيضا لأفضل مناسبة لقواعد البيانات مقابل XML على سبيل المثال. أنظر أيضا هذا السؤال ذات الصلة.

بالنسبة لسؤالك الثاني، لست متأكدا مما تقصد بذلك. هل تقصد إذا كنت تستطيع إظهار مواقع الويب باستخدام WPF؟ نعم بالطبع، تماما مثل Winforms.

أوه، في WPF لا تزال بعض الأشياء غير منفذة. DataGridViews كما هو مثال شعبي فقط في معاينة Codepelle. لديك الكثير من الأشياء مثل theexpander التي تعمل بطريقة مختلفة، ويمكن أن يكون لديك الكثير من المشاكل مع المحتوى التلقائي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top