تقييم الموضوع :
  • 3 أصوات - بمعدل 5
  • 1
  • 2
  • 3
  • 4
  • 5
[WPF حتى الاحتراف] {4.2} - الـ Style ومنطقة الـResource
#11
السلام عليكم ورحمة الله وبركاته
شكراً على هذا الدرس القيم ولكن لدي استفسار بسيط :
لو كنت أستخدم الستايل في أكثر من نافذة فبإمكاني أن أضعه في Application.xaml
بين الوسمتين :
PHP كود :
<Application.Resources>
</
Application.Resources
ولكن ما فائدة هذا الوسم :
PHP كود :
<ResourceDictionary>
</
ResourceDictionary
؟؟؟؟؟؟؟؟؟؟
وهذا مثال :
PHP كود :
<Application.Resources>
        <
ResourceDictionary>
            <
Style TargetType="TextBox" x:Key="Styletxt">
                <
Setter Property="HorizontalAlignment" Value="Left"/>
                <
Setter Property="Margin" Value="10,5,5,5"/>
                <
Setter Property="MinWidth" Value="200"/>
                <
Setter Property="MaxWidth" Value="250"/>
                <
Setter Property="FontWeight" Value="Bold"/>
            </
Style>
        </
ResourceDictionary>
    </
Application.Resources
لو حذفت من المثال السابق الوسم :
PHP كود :
<ResourceDictionary>
</
ResourceDictionary
فالستايل سيؤدي الغرض فما فائدة هذا الوسم إذن ؟ أكيد له وظيفة ما ؟
فاعلم أنه لا إله إلا الله
الرد }}}
تم الشكر بواسطة:
#12
^

الـ ResourceDictionary هو مكان تضع فيه الResource

دعنا نشبه الResourceDictionary بملف ال(txt.)

نعرف ان ملف الtxt هو ملف يحتوي على نصوص في داخله فيمكنك رفعه وتوزيعه بسهولة جدا



نفس الشيئ للResourceDictionary هو ملف بصيغة (xaml.) يحتوي على اكواد الResource في داخله ويمكنك توزيعه واستعماله في مشاريع اخرى


شخصيا ، اعتبر ان الـ ResourceDictionary  له غرضين اساسيين :-
1- استقلالية اكواد الResource عن المشروع
2- تمكين خاصية الثيمات المتعددة في المشروع




شاهد هذه الصورة :-




يوجد في الصورة ثيمان الاول هو BlackTheme والاخر عبارة عن LightTheme
كل ثيم منهما عبارة عن ResourceDictionary فلو فتحنا الثيم المسمى (BlackTheme) لوجدنا التالي :-





لاحظ الصورة المتحركة :



لاحظ الكود الاول يستورد الResource الموجود في الResourceDictionary المسمى ب LightTheme
والكود الثاني يستورد الResource الموجود في الResourceDictionary المسمى ب BlackTheme





يعني لو في المستقبل قمت بعمل ثيمات للعناصر واشكال مميزة وحبيت تشاركه هنا في المنتدى
اين ستقوم بوضع اكووادك تبع  الTemplate والستايلات والشغلات هذي ؟؟؟

الجواب هو ، تضع كل اكوادك الResourceDictionary وترفعه لنا ^_^




--


وكيفية انشاء ملف الResourceDictionary سهلة جدا ، فقط زر يمين على المشروع وثم Add new Item واختر ResourceDictionary





--


اما بالنسبة لسؤالك الاصلي :

PHP كود :
<Application.Resources>
 
       <ResourceDictionary>
 
           <Style TargetType="TextBox" x:Key="Styletxt">
 
               <Setter Property="HorizontalAlignment" Value="Left"/>
 
               <Setter Property="Margin" Value="10,5,5,5"/>
 
               <Setter Property="MinWidth" Value="200"/>
 
               <Setter Property="MaxWidth" Value="250"/>
 
               <Setter Property="FontWeight" Value="Bold"/>
 
           </Style>
 
       </ResourceDictionary>
 
   </Application.Resources


إقتباس :فالستايل سيؤدي الغرض فما فائدة هذا الوسم إذن ؟ أكيد له وظيفة ما ؟



في الاساس Application.Resources هو حاوية للResource اصلا هههههههه
يعني ان وظيفتها نفس وظيفة الResourceDictionary


لكن الفرق هو كما تلاحظ في الاسم  : Application.Resources اي ان هذه الحاوية مرتبطة بالApplication الحالي

اما الResourceDictionary كما ذكرنا فهو حاوية مستقلة عن الApplication اي كأنها ملف خارجي


لذلك كودك في الاعلى لن يكون له اي تأثير لانك قمت فقط بادخال حاوية داخل حاوية اخرى وذلك لا يضر ولاينفع .





--



اسف على قلة التوضيح ، في الاساس حسيت نفسي عاجز عن شرح موضوع ResourceDictionary لك ـ ربما من التعب

وان شاء الله هذا الResourceDictionary راح يكون شغلنا الشاغل في الدروس المتقدمة من الباب الثالث (باب ال Appearance ) اوعدكم راح تصيرون دكاترة فيه هههههههه
ه





في امان الله
الرد }}}
#13
ما شاء الله تبارك الله
ردك كان بمثابة درس حقيقي عن ResourceDictionary والحمد لله قمت بتطبيقه ونجحت
فكرته رائعة فكما تفضلت تستقل أكواد الـ Resource عن المشروع ويصبح لدينا ثيمات متعددة نختار منها ما نريد
تحية لك يا ملك WPF Wink
فاعلم أنه لا إله إلا الله
الرد }}}
تم الشكر بواسطة: الشاكي لله , hoob computer
#14
ههههههه

والله يااخي انت رائع وتفهمها على الطاير


--

واي سؤال لاتتردد احنا حاضرين
الرد }}}
تم الشكر بواسطة: السندبااد
#15
الروعة فيما نشاهده من إبداعاتك
والبارحة راجعت هذا الدرس جيداً وكي أفيد وأستفيد
وضعت بالمرفقات مثالاً لكيفية اختيار ستايل ما من عدة استايلات موجودة بالـ ResourceDictionary
من الكومبو بوكس نختار الستايل ثم ننقر الزر تغيير الستايل
الأكواد بسيطة إن شاء الله


الملفات المرفقة
.rar   Style.rar (الحجم : 87.93 ك ب / التحميلات : 47)
فاعلم أنه لا إله إلا الله
الرد }}}
تم الشكر بواسطة: hoob computer , مبرمج بلا حدود
#16
السلام عليكم ورحمة الله وبركاته

درس ولا أروع واظن انه أساس لبقية الدروس لأنه يضع المبرمج على قاعدة أساسية في صناعة الستايلات والعمل باحترافية اكثر.

بورك فيك أخي محمد واشكرك على سعة صدرك للإجابة على الأسئلة بطريقة احترافية لم نعهد مثلها في الكثير من المواقع فجزاك الله خير وبارك الله بك.
قال رسول الله صلى الله عليه وسلم ( من قال لا إله إلا الله دخل الجنة ) حديث صحيح.
قال رسول الله صلى الله عليه وسلم ( كلمتان خفيفتان على اللسان ثقيلتان في الميزان حبيبتان للرحمن : سبحان الله وبحمده سبحان الله العظيم ) حديث صحيح.
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [WPF حتى الاحتراف] - عمل واجهة (الفيديو الثاني) الشاكي لله 9 7,529 06-12-20, 04:09 AM
آخر رد: Mohammed1991
  [WPF حتى الاحتراف] {1} - إنشاء برنامجك الاول الشاكي لله 30 21,880 14-10-18, 08:34 AM
آخر رد: qadar elzaman
  [WPF حتى الاحتراف] {0} - نظرة عامة عن WPF الشاكي لله 14 11,812 14-10-18, 07:58 AM
آخر رد: qadar elzaman
  [WPF حتى الاحتراف] {4.6} - الـ Data Template و الـ Sample Data الشاكي لله 14 10,964 05-03-17, 09:47 AM
آخر رد: dabas
  [WPF حتى الاحتراف] {4.3} - الـTemplate ومقدمة عن الـTrigger الشاكي لله 8 6,979 25-01-17, 04:45 AM
آخر رد: hero2199
  [WPF حتى الاحتراف] - عمل واجهة (الفيديو الاول) الشاكي لله 5 5,208 02-12-16, 11:07 PM
آخر رد: alsef
  [WPF حتى الاحتراف] - ورشة عمل Pages Navigation (3- الانميشن) الشاكي لله 16 8,947 02-06-16, 02:53 PM
آخر رد: CLARO
  [WPF حتى الاحتراف] - ورشة عمل Pages Navigation (2- البرمحة) الشاكي لله 1 2,881 14-05-16, 11:54 PM
آخر رد: السندبااد
  [WPF حتى الاحتراف] - ورشة عمل Pages Navigation (1- التصميم) الشاكي لله 1 2,748 14-05-16, 11:27 PM
آخر رد: السندبااد
  [WPF حتى الاحتراف] {3.3} - اداة الـ Grid الشاكي لله 14 9,713 31-03-16, 11:11 PM
آخر رد: السندبااد

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم