السبت، 26 أكتوبر 2019

WPF Windows Presentation Foundation

ما هو WPF ؟

 

المشار إليها فيما يلي باسم WPF ، هي إحدى تقنيات Microsoft التي تتيح لك إنشاء واجهات مستخدم غنية لتطبيقات سطح مكتب Windows. تم تقديم WPF مع .NET Framework الإصدار 3.0 كتكنولوجيا بديلة لـ Windows Forms.
يهدف WPF إلى السماح لك بإنشاء تجارب مستخدم أكثر ثراءً مما يمكنك تطويره بسهولة باستخدام Windows Forms. لتحقيق ذلك ، يغير WPF اختيار تكنولوجيا العرض الأساسية تمامًا. بينما تستند Windows Forms إلى واجهة جهاز الرسومات المستندة إلى البكسل (GDI) ، يستخدم WPF الأنظمة المستندة إلى ناقل DirectX.
نظرًا لأن معظم بطاقات الفيديو الحديثة تدعم DirectX ، فإن تطبيقات WPF تسمح بتدوير النصوص والصور المستندة إلى المتجهات وتدويرها دون استخدام البيكسل. يمكنك دمج رسومات ورسوم متحركة ثنائية وثلاثية الأبعاد ، والتي تستخدم تلقائيًا تسريع الأجهزة المتاحة لتحسين الأداء. يمكنك أيضًا استخدام WPF لتطبيقات الأعمال التي لا تتطلب مثل هذه الرسوم البيانية المزدهرة. على سبيل المثال ، يتضمن Visual Studio 2010 و 2012 واجهات المستخدم المطورة باستخدام WPF.

Extensible Application Markup Language او XAML


يمكنك إنشاء تخطيطات WPF باستخدام مصمم Visual Studio. كما هو الحال مع Windows Forms ، يمكنك سحب وإسقاط عناصر التحكم من مربع الأدوات على سطح تصميم للإطار. عند إنشاء تصميمات واجهة المستخدم الخاصة بك بهذه الطريقة ، يقوم Visual Studio بإنشاء تعليمات برمجية باستخدام لغة جديدة باسم "لغة تمييز التطبيق القابلة للتوسيع". هذا هو اختصار ل XAML ، وضوحا "Zamm Ell".

بخلاف نماذج Windows ، لا يخفي WPF التعليمات البرمجية التي ينشئها المصمم. كود XAML سهل المشاهدة ، كما هو مبني على XML ، سهل الفهم. في الواقع ، من السهل للغاية التعامل معه بحيث يتم تشجيعك بنشاط على تحريره يدويًا. في كثير من الحالات ، يكون من السهل التعامل مع عناصر XML وسماتها مباشرةً بدلاً من إنشاء نفس النتائج مع مصمم. خلال البرنامج التعليمي ، سوف نركز على XAML ، بدلاً من العمل مع المصممين ، لأن هذا يتيح فهمًا أكبر للتكنولوجيا.

XAML لها تطبيقات أوسع من إنشاء واجهات مستخدم WPF. إنه أيضًا الأساس لتصميم واجهات Silverlight وبرامج وتطبيقات Windows Phone للأجهزة اللوحية التي تعمل بنظام Windows 8. هناك اختلافات بين التقنيات المستندة إلى XAML ولكن تعلم متغير واحد يجعل الانتقال إلى الآخرين أسهل. سنركز على إصدار WPF من XAML ، لأنه الوحيد الذي يسمح لك بإنشاء تطبيقات مع وصول كامل إلى ميزات نظام التشغيل Microsoft Windows.

من الميزات الرائعة لـ WPF والتطبيقات المستندة إلى XAML بشكل عام ، الفصل بين واجهة المستخدم والرمز الآخر في برنامجك. تعتمد تطبيقات Windows Forms اعتمادًا كبيرًا على الأحداث ، حيث ترتبط معالجات الأحداث بعناصر التحكم المرئية. يفصل WPF بين رمز XAML ، والذي يحدد تصميم التطبيق ورمز الخلفية الذي تنشئه باستخدام لغة .NET مثل C #.

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

يرتبط التصميم والرمز بشكل فضفاض بحيث يمكن للأشخاص المختلفين العمل على هذه العناصر المنفصلة. على سبيل المثال ، يمكن للمطور إنشاء فئات تحتوي على خصائص لربطها وأوامر تنفيذها دون معرفة تصميم واجهة المستخدم. مع توفر الحد الأدنى من التفاصيل للرمز الأساسي ، يمكن لمصمم واجهة المستخدم إنشاء XAML بشكل منفصل للمطور لدمجه في المشروع لاحقًا. قامت Microsoft بإنشاء أدوات منفصلة لهذين الدورين. يتم تشجيع المطورين على استخدام Visual Studio بينما يمتلك المصممون أدوات Expression Studio ، بما في ذلك Blend.

يتم توفير فصل آخر من المخاوف عن طريق التصميم. باستخدام مفهوم مماثل لفصل المحتوى والأسلوب في صفحات الويب التي يوفرها HTML و CSS ، يمكنك تحديد الأنماط باستخدام XAML وتطبيقها على عناصر تحكم متعددة. على سبيل المثال ، إذا قررت أن جميع الأزرار الموجودة في البرنامج يجب أن تكون حمراء وتحتوي على نص غامق ، فيمكنك تحديد نمط لذلك وإضافة النمط إلى جميع الأزرار. إذا قررت لاحقًا أن اللون الأزرق سيكون لونًا أفضل ، فيمكنك تحديث النمط في مكان واحد وستتخذ جميع عناصر التحكم التي تستخدم النمط الشكل الجديد.

عناصر تحكم محسنة  

يغير WPF الطريقة التي تتحكم بها واجهة المستخدم في العمل. تحتوي معظم عناصر التحكم التي يشعر بها مطورو Windows Forms على ما يعادلها في WPF. لا تزال عناصر التحكم تتضمن خصائص تتيح لك تغيير شكلها وسلوكها ، مثل خيارات الألوان والخطوط. للتطبيقات البسيطة ، يمكن أن يكون هذا كافيا.

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

عناصر تحكم WPF تستند إلى قوالب. يتم تعريف القالب باستخدام XAML ويتضمن جميع العناصر الرسومية التي تسمح لعنصر تحكم بالعمل بشكل صحيح. على سبيل المثال ، يتضمن قالب الزر ألوان الخلفية والتظليل والخطوط والمنحنيات ومناطق المحتوى التي تشكل زرًا. هذه المعلومات موجودة لكل حالة زر ، مثل الحالات الممكّنة والمعطلة والمركزة والماوس فوق والضغط. يتضمن القالب أيضًا تفاصيل التحولات المتحركة بين الحالات.

عند إنشاء تطبيقاتك ، يمكنك تعديل قوالب عناصر التحكم الحالية. يتيح لك هذا إمكانية تغيير شكل عناصر التحكم القياسية وشعورها لتتناسب مع تصميم البرنامج الذي تقوم بتطويره.
 

Multimedia

كانت نماذج Windows محدودة للغاية في دعمها للوسائط المتعددة. يقوم WPF بتصحيح ذلك باستخدام عناصر التحكم القياسية للصور والصوت والفيديو. يمكن تشغيل الصوت والفيديو بتنسيقات متعددة ودمجه في عناصر التحكم باستخدام تركيبة التحكم. يمكنك بسهولة تضمين الوسائط المتعددة التي يتم تشغيلها تلقائيًا أو التي يتم التحكم فيها بواسطة إجراءات المستخدم.

عيوب WPF 

 WPF هي تقنية قوية للغاية ولكن لديها بعض العيوب. بالنسبة لمطوري Windows Forms ذوي الخبرة ، يكون الفرق بين الأسلوبين كبيرًا. تؤدي مرونة WPF إلى زيادة التعقيد في بعض السيناريوهات. هذا يعني أن WPF لديه منحنى تعليمي أكثر حدة من Windows Forms وأن الترحيل إلى WPF يتطلب الكثير من التعلم. يمكن اعتبار حقيقة أن WPF يمكن استخدامها بطريقة مشابهة لنماذج Windows بمثابة عيب. على الرغم من أنه يسمح بنقل أسرع ، إلا أنه في بعض الأحيان يعني أن مطوري WPF الجدد غير مدركين لقوة النموذج الجديد.

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

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


ليست هناك تعليقات:

اضافة تعليق

جميع الحقوق محفوظة © 2019 الحقيبة البرمجية لمبرمجى VB.NET