• 0
fun

دورة في windows presentation foundation و XAML

سؤال

أولا أرجو الإضطلاع على الموضوع التالي : .net framework 3.0

حسنا بعد قدوم windows vista فالكثير تغير من الواجهة الرسومية

(مع windows presentation foundation ) إلى نظام الملفات المعدل winfs

Windows presentation foundation هو نظام الجرافيكس الجديد المبني كليا على xaml

حسنا ما هو xaml ؟

Xaml هو لغة جديدة مبنية على وسوم xml و إسمها الكامل هو extensible application markup language مهمتها الأساسية وصف الواجهات بنظام declarative programming

Windows presentation foundation يعتمد على api جديدة وموحدة والجذير بالذكر أنها managed أي مبنية ب .net وهو يستعمل كل طاقات حاسوبك الشخصي و قريبا سيعوض windows form و web form ، نظرا للإمكانيات الكبيرة التي يمتلكها في تسهيل التطوير 2D و 3D

يتيح XAML شيئا أخر ، فهو يساعد المصممين على الدخول في تطوير التطبيقات و يحاول تقليص الفارق بين مواقع الويب و برامج WINDOWS

ف XAML يحتوي كغيره من لغات .NET على الأنواع التالية

namespaces

• classes,

• propriétés, خصائص

• تعريف الأحداث ليتم قنصها بلغات الدوت نت الأخرى

أتمنى أن أكون قد أعطيت مقدمة بسطة عن windows presentation foundation و XAML ولكنني أنوه أن الموضوع جديد و أننا إذا طورنا تطبيقات بالإعتماد على wpf الأن فالمستخدمين لن يستخدموها قبل غد

أرى أنكم لاحظتم أنني لم أتحدث عن التطوير ب xaml و سأتطرق إلى هذا في دروس مقبلة

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

47 إجابة على هذا السؤال .

  • 0

السلام عليكم

--------------

مشكور أخي الكريم على هذه الخلاصة .......

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

سأحول الموضوع إلى دورة في windows presentation foundation

حسنا ماذا تحتاج للتطوير ب wpf ؟

أولا ستحتاج visual studio 2005 و من الأفضل أن يكون proffesionel لأن express لا يدعم cider

ثانيا ستحتاج إلى winfx runtime و إصدار فبراير 2006 يمكنك تحميله على الرابط التالي

الرابط

ثالثا ستحتاج إلى windows sdk يمكنك تحميل ‘صدار فبراير 2006 على هذا الرابط

رابعا من الأفضل أن تحمل أدوات التطوير ب wpf وهي تشمل cider (xaml designer ) و XAML INTELLISENCE و غيرها رغم أنها لا زالت beta و ستكون مدرجة ضمن orcas

الرابط

في المرة القادمة سأعرض cider و التطوير ب xaml

وفقكم الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

حسنا ما هو cider ؟

CIDER هو DESIGNER الجديد المعتمد كليا على XAML

فهو إن صح التعبير CODE GENERATOR

مثلا عند تصميمك لتطبيق WINDOWS FORMS عادي تصنع BUTTON من خلال DESIGNER و تبدل خصائصه فهذا يجنبك كتابة أطنان من الكود و هذا ما يفعله CIDER فهو DESIGNER يقبل drag&drop و يولد xaml code

الجذير بالذكر إنه لا زال beta و سيكون مدرجا ضمن orcas (النسخة القادمة من visual studio )

لاحظوا الصور :

cider1.png

cider2.png

cider3.png

cider4.png

cider5.png

cider7.png

سأشرح في المرة القادمة أساسيات XAML

وفقكم الله

أخوكم programmer4fun

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

كما كنت قد قلت فإن xaml يحتوي على

Class

Propriétés خصائص

Namespace

خلق الأحداث ليتم قنصها في .net code

حستا فلنحلل هذا الكود

<Window x:Class="DemosWPF.Window1" 
xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation
xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml
Title="DemosWPF" Height="768" Width="1024"
WindowStartupLocation="CenterScreen"
>

هاهو namespace

xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml

ها هو class

x:Class="DemosWPF.Window1"

حسنا ها هي الخاصية title

Title="DemosWPF"

أما الأحداث فسأفصل أمرها لاحقا

أنظر الصورة التالية

3.png

لتتضح إستعمالات xaml أكثر فسأقدم مثالا

لا شك أن كل واحد منا إضطلع على asp.net إذن فإنتبهوا إلى هذه الكلمة codebehind

فتطبيقات aspx تفصل الواجهة عن الكود كما هو معروف

في wpf نفصل الكود عن الواجهة ولكن من وجهة نظر أخرى فتطبيقات الويب و الويندوز ستستعمل xaml

و تفصل xaml code في ملف خاص

تخيل ماذا تستطيع أن تقوم به من خلال هذا فيمكنك تحميل واجهة جديدة للبرنامج أثناء التنفيذ بكود صغير وهذا رائع

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أولا لنفتح visual studio 2005 و لنحدد هذا المشروع

55.png

حسنا لنبدأ بتطوير أول تطبيق بواجهة مبنية على xaml

لنخلق نافذة فارغة

<?xml version="1.0"?>
<Window xmlns:wfi="wfi"
xmlns:wf="wf"
Width="200" Height="150" Text="Mon application">
</Window>

win1.gif

لنضيف الوسوم canvas و windows forms host لتستقبل نافذتنا الأدوات

<?xml version="1.0"?>
<Window xmlns:wfi="wfi"
xmlns:wf="wf"
Width="200" Height="150" Text="Mon application">
<Canvas>
<wfi:WindowsFormsHost>
</wfi:WindowsFormsHost>
</Canvas>
</Window>

win2.gif

لنخلق button

<?xml version="1.0"?>
<Window xmlns:wfi="wfi"
xmlns:wf="wf"
Width="200" Height="150" Text="Mon application">
<Canvas>
<wfi:WindowsFormsHost>
<wf:Button Top="55" Left="60" Width="80" Height="18" Text="Hello!" />
</wfi:WindowsFormsHost>
</Canvas>
</Window>

win3.gif

لعلك لاحظت أن الزر يشمل النافذة كلها لذا سنضيف الوسم panel

<?xml version="1.0"?>
<Window xmlns:wfi="wfi"
xmlns:wf="wf"
Width="200" Height="150" Text="Mon application">
<Canvas>
<wfi:WindowsFormsHost>
<wf:Panel>
<wf:Button Top="55" Left="60" Width="80" Height="18"
Text="Hello!" />
</wf:Panel>
</wfi:WindowsFormsHost>
</Canvas>
</Window>

win4.gif

وبهذا تكون قد أعددت أول xaml code

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أرى أن الإهتمام بالموضوع مفقود رغم أن هذا سيكون عماد برمجة windows vista

هذا واضح من خلال عدم وجود الردود وقلة المشاهدات :(

أرجو إهتمام أكثر بالموضوع قالمصادر التي تتحدث عنه قليلة و أنا أبذل ما بوسعي لأغني الدورة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

قبل أن أتحدث عن إمكانيات أخرى ل wpf علينا التفكير كمبرمجين بهذه النقطة :

كيف يحدث هذا ؟

هذا السؤل شدني فبدأت أبحث حتى وجدت ضالتي في devdays 2006

تطبيقك يقسم إلى قسمين إثنين :

- الكود xaml

- الكود c sharp or vb.net

يقسم الكود xaml إلى ملفين :

- baml : وهو يحتوي و هو يحتوي على الكود xaml ولكنه مترجم إلى لغة الألة لتسريع التنفيذ

- .g : و هو يجمع مع الكود .net حيث يشكلان partial class

بعد الترجمة إلى ملف تنفيذي ، في زمن التنفيذ يحمل المعلومات الموجودة في الملف baml لصنع واجهة للتطبيق

أتمنى أن تكون الصورة قد توضحت الأن

و سأشرح عدة أوجه للتطوير ب wpf في المرة القادمة

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يبدو أني لم أتطرق إلى expression gamme

إذن فأعلم يا أخي المبرمج أن expression هي مجموعة برامج موجهة خصيصا للمصممين و تولد xaml code وتتكون من 3 برامج هي :

Expression graphic designer

EG.png

وهو موجه خصيصا للتعامل مع الصور و توليد صور معتمدة على xaml ويمتلك قدرات هائلة لم أرى لها مثيل

Expression interactive designer

EI.png

وهو موجه خصيصا لتطوير تطبيقات ويندوز قياسية و يمنحك قدرات هائلة أيضا

تخيل أن بإمكانك تحريك الزر بدون كود واحد

Expression web designer

EW.png

و هو يساعدك على تصميم صفحات ويب بواجهة ثورية معتمدة على xaml

بالنسبة لي أفضل أن يشتري المبرمج expression interactive designer أفضل من شراء visual studio proffesioinnel

لماذا |؟

فحسب devdays 2006 يمكنك البرمجة من خلال expression interactive designer ! ! !

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

حسنا كيف يقوم wpf بهذا ؟

لاحظوا الصورة

الصورة

Wpf يظهر البيانات بإستعمال مساري تنفيذ

الأول دوره الأساسي يتلخص في خلق العناصر التي ستظهر على الشاشة وهو managed

أما الثاني فدوره هو إظهار البيانات و هو unmanaged من أجل التسريع

عليك معرفة ان الأدوات في wpf مكونة من ادوات أخرى

مثلا

Stackpanel + scrollviewr = listbox

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شكرا أخي أتمنى أن تستمر الدورة خصوصا أني لم أكن أعرف شيئا عن wpf

تم تعديل بواسطه ramos
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم ورحمة الله وبركاته :

أرى أن الإهتمام بالموضوع مفقود رغم أن هذا سيكون عماد برمجة windows vista

هذا واضح من خلال عدم وجود الردود وقلة المشاهدات

معليش أخي programmer4fun أنا أعرف تماماً ما تحس به ..

الله يعطيك العافية على مجهودك .. رغم أني لم أقرأ موضوعك بعد ..

لكن حزّ في نفسي عدم تفاعل الأعضاء مع موضوعك رغم أهميته ..

أشكر حرصك على نشر الفائدة بين إخوتك و أثمنه ..

الله يعطيك العافية و الأجر .. :)

تم تعديل بواسطه imadouzoun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شكرا أخي programmer4fun

انت لفت نظري لحاجات جديده

و ان شاء الله تستمر في الدوره الجميله دي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

أولا أنا أسف عن انقطاعي عن الدورة

فلنبدأ

عليك المعرفة أن الخاصية content في wpf تعوض الخاصية text في windows forms ولعل هذا سيمنحك القدرة على القيام بما تريد

لاحظ الكود التالي

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="WindowsApplication2" Height="300" Width="300" >
<Grid>
<Button Margin="67,106,90,123" Name="Button1" >هذا زر </Button>
</Grid>
</Window>

لاحظ النتيجة

رابط الصورة

لعلك لاحظت أنك أن الخاصية contentمبنية على طفل لعقدة xaml و لهذا فإنك تستطيع إضافة صور ...

كما أنك تستطيع فعل أشياء أفضل فهذه الخاصية هي من النوع object ولهذا فإنك ستستطيع إضافة أي شيء

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

حسنا الأن سندرس خاصية رائعة لأدوات wpf و لا شك أنها ستكون الخاصية resources

فمن خلال هذه الخاصية ستستطيع القيام ب :

تعديل Styles

تعديل Templates

Animations

Transformations

قد لا تفهم شيئا مما قلته ولكن إعلم أن resources شبيهة بملفات css إلا أنها داخل تطبيقاتنا

أنا الأن أحضر لفرض لذا إعذروني فسأشرح كل شيء بالتفصيل المرة القادمة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

موضوع جميل أخي العزيز

من بين نقاط قوة ال wpf انها أصبحت تفرق ما بين عمل المبرمج و المصمم بل و أعطت المصمم كل ما يسهل عليه تصميم الواجهات دون الحاجة لتعلم لغات برمجة مثل vb او c# .. فالمبرمج لن يحتاج الا لعمل الكود و بعد ذلك ربطه بكود ال xaml بطريقة معينة و بهذا يمكن تصميم واجهات عدة لبرنامج واحد بسهولة و أنصح الجميع بمتابعة الموضوع و تطبيق عملي لكل هذه الأمور و سوف تكتشفون انها بالفعل أمور مدهشة :)

بارك الله فيك أخي programmer4fun و اكمل دروسك باذنه تعالى

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الموقع الخاص بتقنية الفريم ورك 3

http://www.netfx3.com

مدونة تتكلم عن هذة التقنية الجديد وبها العديد من الامثلة الرائعة.

http://thewpfblog.com

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

مشكورين - جزاكم الله خيرا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أسف عن توقفي عن الدورة بسبب الإمتحان كما ذكرت و الحمد لله فقد مر الإمتحان و أرجو منكم دعوات حتى أتفوق فيه

حسنا

ذكرت أننا سنتحدث عن styles و لكن تذكرت إني لم أعرض أدوات wpf

لنعرف نافذة جديدة

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300"
>
<Grid>
</Grid>
</Window>

أنظر النتيجة

Nouvelle%20image.jpg

ثم نعرف زرا جديدا

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300"
>
<Grid>
<Button Height="23" Margin="137,34,80,0" Name="Button1" VerticalAlignment="Top">زر جديد </Button>
</Grid>
</Window>

لاحظ النتيجة

Nouvelle%20image%20(1).jpg

نبدل لون الزر إلى الأحمر

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300"
>
<Grid>
<Button Height="23" Margin="137,34,80,0" Name="Button1" VerticalAlignment="Top" Background="#FFFF0000">زر جديد </Button>
</Grid>
</Window>

لاحظ النتيجة

Nouvelle%20image%20(2).jpg

و نبدل لون الجوانب إلى الأحمر أيضا

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300"
>
<Grid Opacity="1">
<Button Height="23" Margin="137,34,80,0" Name="Button1" VerticalAlignment="Top" Background="#FFFF0000" BorderBrush="#FFFF0000" >زر جديد </Button>
</Grid>
</Window>

لاحظ النتيجة

Nouvelle%20image%20(3).jpg

كما نحول حجم الخط إلى 12

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300"
>
<Grid Opacity="1">
<Button Height="23" Margin="137,34,80,0" Name="Button1" VerticalAlignment="Top" Background="#FFFF0000" BorderBrush="#FFFF0000" FontSize="12">زر جديد </Button>
</Grid>
</Window>

لا شك أنك عند قرائتك للكود تقرأ هذا Name="Button1" هذه ليست الخاصية text بل هي خاصية إسم الكائن الذي يمثل الزر حيث بإمكانك قنص الحدث بلغة برمجتك المفضلة (لتكن vb .net ) هكذا

ندون هذا الكود في window1.xaml.vb

نعرف إجراء يقوم عند ضغطك على الزر بإعطائك التاريخ و الوقت الحاليين

Public Sub g(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
MsgBox(Now)
End Sub

وهكذا تكون قد قمت بأول برنامج كامل بإستخدام wpf

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

تم تثبيت الموضوع... بارك الله فيك programmer4fun على المجهود الرائع..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أولا أنا أشكر المشرفين على تثبيتهم للموضوع

اليوم سنقوم بتعقيد البرنامج السابق قليلا لغرض إظهار بعض الأمور في wpf

سنقوم بإضافة textbox إلى تطبيقنا

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">
<Button Height="23" Margin="137,34,80,0" Name="Button1" VerticalAlignment="Top" Background="#FFFF0000" BorderBrush="#FFFF0000" FontSize="12">زر جديد </Button>
<TextBox Height="26" Margin="141,78,51,0" Name="TextBox1" VerticalAlignment="Top"></TextBox>
</Grid>
</Window>

لاحظ النتيجة

Nouvelle%20image(1).jpg

كما ذكرت فللخاصية content تعوض الخاصية text

لذا يمكننا إضافة نص في wpf هكذا

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">
<Button Height="23" Margin="137,34,80,0" Name="Button1" VerticalAlignment="Top" Background="#FFFF0000" BorderBrush="#FFFF0000" FontSize="12">زر جديد </Button>
<TextBox Height="26" Margin="141,78,51,0" Name="TextBox1" VerticalAlignment="Top">دورة </TextBox>
</Grid>
</Window>

ستكون النتيجة

Nouvelle%20image%20(1)(1).jpg

إذا لاحظت نافذة الخصائص فسترى أن إسم هذا textbox هو textbox1

لاحظ الصورة

Nouvelle%20image%20(2)(1).jpg

لذا سيمكنك إستخدام هذا textbox في لغة برمجتك المفضلة كما أحببت

Public Sub g(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
MsgBox(TextBox1.Text)
End Sub

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

أريد أن أكمل في شرح بعض الأدوات

و سنكمل كل هذا في تطبيقنا

أول أداة سأشرحها هي combobox فستفاجئون إذا علمتم أن cider لا يمكنك حتى الأن من التعامل بشكل جيد مع هذه الأداة

سننشأ أداة جديدة

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">
<Button Height="23" Margin="136,87,81,0" Name="Button1" VerticalAlignment="Top" Background="#FFFF0000" BorderBrush="#FFFF0000" FontSize="12">زر جديد </Button>
<TextBox Margin="133,117,81,126" Name="TextBox1" >دورة </TextBox>
<ComboBox Height="26" Margin="99,0,72,27" Name="ComboBox1" VerticalAlignment="Bottom" >
</ComboBox>
</Grid>
</Window>

لاحظ النتيجة

Nouvelle%20image%20(3)(1).jpg

و لكن ستقولون كيف نحدد ما هو بداخل هذا combobox

الجواب هو بإستعمال <comboboxitem>

لاحظ الكود

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">
<Button Height="23" Margin="136,87,81,0" Name="Button1" VerticalAlignment="Top" Background="#FFFF0000" BorderBrush="#FFFF0000" FontSize="12">زر جديد </Button>
<TextBox Margin="133,117,81,126" Name="TextBox1" >دورة </TextBox>
<ComboBox Height="26" Margin="99,0,72,27" Name="ComboBox1" VerticalAlignment="Bottom" >
<ComboBoxItem>arabteam2000</ComboBoxItem>
<ComboBoxItem>xaml</ComboBoxItem>
<ComboBoxItem>wpf</ComboBoxItem>
</ComboBox>
</Grid>
</Window>

و هاهي النتيجة

Nouvelle%20image%20(4).jpg

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأن سوف نقوم بالتعامل مع أداة رائعة هي tabcontrol

كما قلت فإن الخاصية content من النوع object وبهذا يمكنك وضع أدوات داخل أخرى

Cider beta يعاني قصورا مع هذه الاداة أيضا

لذا سوف تقوم بالتعامل معها عن طريق الكود

لاحظ الكود التالي

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">

<TextBox Margin="135,49,79,0" Name="TextBox1" Height="31" VerticalAlignment="Top">دورة </TextBox>
<ComboBox Height="26" Margin="99,0,72,27" Name="ComboBox1" VerticalAlignment="Bottom" Grid.Row="1">
<ComboBoxItem>arabteam2000</ComboBoxItem>
<ComboBoxItem>xaml</ComboBoxItem>
<ComboBoxItem>wpf</ComboBoxItem>
</ComboBox>
<TabControl Margin="36,100,31,67" Name="TabControl1">
</TabControl>
</Grid>
</Window>

لاحظ النتيجة

Nouvelle%20image%20(5).jpg

لانستطيع أن نترك أداتنا هكذا لذا سنضيف الكود التالي

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">

<TextBox Margin="135,49,79,0" Name="TextBox1" Height="31" VerticalAlignment="Top">دورة </TextBox>
<ComboBox Height="26" Margin="99,0,72,27" Name="ComboBox1" VerticalAlignment="Bottom" Grid.Row="1">
<ComboBoxItem>arabteam2000</ComboBoxItem>
<ComboBoxItem>xaml</ComboBoxItem>
<ComboBoxItem>wpf</ComboBoxItem>
</ComboBox>
<TabControl Margin="36,100,31,67" Name="TabControl1" >
<TabItem>
<Button> arabteam2000</Button>
</TabItem>
<TabItem>xaml </TabItem>
<TabItem>wpf</TabItem>
</TabControl>
</Grid>
</Window>

لا أشك في أنك فهمت الكود إذا كنت قد فهمت الكود الذي يتعامل مع combobox إلا أننا أضفنا الأن button داخل <TabItem>

لاحظ النتيجة في الصور التالية

Nouvelle%20image%20(6)(1).jpg

Nouvelle%20image%20(7)(1).jpg

Nouvelle%20image%20(8).jpg

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

حسنا

سنتعلم كيف نتعامل مع الأداة image و كيف نضيف الصور إلى أدواتنا

لنكمل البرنامج السابق و سنحذف tabcontrol و combobox

إذا أردنا إضافة صورة في برنامجنا فما علينا إلا أن نضيف أداة جديدة هي الأداة image

والجذير بالذكر أن cider يعاني قصورا معها أيضا (لقد صدعت رأسكم بهذه الجملة :lol: )

لاحظ الكود التالي

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">

<TextBox Margin="135,49,79,0" Name="TextBox1" Height="31" VerticalAlignment="Top">دورة </TextBox>


<Image Margin="19,130,0,71" Name="Image1" HorizontalAlignment="Left" Width="117"/>
</Grid>
</Window>

لاحظ الصورة

gigi.jpg

إذن كيف سنضيف الصورة إلى هذه الأداة

الجواب هو بإستعمال الخاصية source

لاحظ الكود

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">

<TextBox Margin="135,49,79,0" Name="TextBox1" Height="31" VerticalAlignment="Top">دورة </TextBox>


<Image Margin="19,130,0,71" Name="Image1" HorizontalAlignment="Left" Width="117" Source ="C:\Documents and Settings\All Users\Documents\Mes images\Échantillons d'images\collines.jpg" />
</Grid>
</Window>

لاحظ النتيجة

gigi2.jpg

الأن أظن أنكم ستتسائلون عن كيفية إضافة صورة إلى أداة أخرى مثل button

الجواب لن يكون بإستعمال الخاصية source

بل سيكون بإضافة أداة image داخل button

لاحظ الكود

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="لنجرب تقنيات المستقبل " Height="300" Width="300" xmlns:my="clr-namespace:System;assembly=mscorlib">
<Grid Opacity="1">
<TextBox Margin="135,49,79,0" Name="TextBox1" Height="31" VerticalAlignment="Top">دورة </TextBox>
<Button Height="71" Margin="117,0,48,36" Name="Button1" VerticalAlignment="Bottom" >
<Image Source ="C:\Documents and Settings\All Users\Documents\Mes images\Échantillons d'images\collines.jpg" />
</Button>
</Grid>
</Window>

و هاهي النتيجة

gigi3.jpg

تم تعديل بواسطه programmer4fun
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .