تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الدرس السادس والخمسون - أدوات Wpf
#1
كاتب الموضوع : أحمد جمال

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


أدوات WPF :

اضافة للادوات التقليدية ، توفر لك WPF مجموعة من الأدوات الجديدة ، أو تغير من مظهرها وخياراتها من أجل استخدامك لها .

أولاً : مجموعة الأدوات التقليدية :
مجموعة الادوات المعتادة التي تضم Lable, Button وباقي الأدوات العادية ، فقط تتمتع ببعض الخصائص الإضافية لتجميل وتحسين المظهر :

ثانياً : أدوات الفورم :
مثل القوائم واشرطة التمرير وخلافه .


ثالثاً : أدوات ال media :
مثل أدوات الصوت والصورة والفيديو وخلافه .


رابعاً : أدوات المظهر :
تضم بعض الادوات الاساسية مثل ال Groupbox وال Panel وأخرى جديدة مثل Canvas و StackPanel .


الصورة توضح مجموعة من أدوات WPF المختلفة :


وكود ال XAML الخاص بها بالشكل التالي :

كود :
[COLOR=#000080]<Window x:Class="WpfApplication3.Window1"
xmlns=[color=#0000ff]"http://schemas.microsoft.com/winfx/2006/xaml/presentation"[/color]
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title=[color=#0000ff]"Window1"[/color] Height=[color=#0000ff]"240"[/color] Width=[color=#0000ff]"343"[/color]>[/COLOR]
[color=#000080]<Grid>[/color]
[color=#000080]<Button Name=[COLOR=#0000ff]"btnPurchaseOptions"[/color] Margin=[color=#0000ff]"10.5,51,10.5,41"[/color]>[/COLOR]
[color=#000080]<StackPanel>[/color]
[color=#000080]<StackPanel Orientation = "Horizontal">[/color][color=#000080]</StackPanel>[/color]
[color=#000080]</StackPanel>[/color]
[color=#000080]</Button>[/color]
[color=#000080]<Expander Name=[COLOR=#0000ff]"helpExpander"[/color] Header=[color=#0000ff]"Help"[/color] Height=[color=#0000ff]"23"[/color] HorizontalAlignment=[color=#0000ff]"Left"[/color] Margin=[color=#0000ff]"70,70,0,0"[/color] VerticalAlignment=[color=#0000ff]"Top"[/color] Width=[color=#0000ff]"51.757"[/color]>[/COLOR][color=#000080]</Expander>[/color]
[color=#000080]<Expander Name=[COLOR=#0000ff]"fileExpander"[/color] Header=[color=#0000ff]"File"[/color] Height=[color=#0000ff]"23"[/color] HorizontalAlignment=[color=#0000ff]"Left"[/color] Margin=[color=#0000ff]"22,70,0,0"[/color] VerticalAlignment=[color=#0000ff]"Top"[/color] Width=[color=#0000ff]"44.95"[/color]>[/COLOR][color=#000080]</Expander>[/color]
[color=#000080]<Slider Height=[COLOR=#0000ff]"21"[/color] Margin=[color=#0000ff]"21.757,0,19,75"[/color] Name=[color=#0000ff]"slider1"[/color] VerticalAlignment=[color=#0000ff]"Bottom"[/color]>[/COLOR]
[color=#000080]<Slider.BitmapEffect>[/color]
[color=#000080]<DropShadowBitmapEffect />[/color]
[color=#000080]</Slider.BitmapEffect>[/color]
[color=#000080]</Slider>[/color]
[color=#000080]<ProgressBar Height=[COLOR=#0000ff]"15"[/color] Margin=[color=#0000ff]"23,0,19,50"[/color] Name=[color=#0000ff]"progressBar1"[/color] VerticalAlignment=[color=#0000ff]"Bottom"[/color] Value=[color=#0000ff]"50"[/color] />[/COLOR]
[color=#000080]</Grid>[/color]
[color=#000080]</Window>[/color]
}}}
تم الشكر بواسطة:
#2
نقاط سريعة حول أدوات WPF :

- الأشكال البيضاوية Ellipse : لتحديد الأشكال البيضاوية والدوائر وخلافه .
- عناصر List أو ال Combobox اصبح بالامكان تحديد لون وخلفية مختلفة لكل منها بالشكل التالي مثلاً :


- يمكن تفعيل خاصية تصحيح الخطأ Spell Check في أي مربع نص بالشكل التالي مثلاً :

كود :
[color=#000080]<TextBox SpellCheck.IsEnabled="True" Height=[COLOR=#0000ff]"23"[/color] Margin=[color=#0000ff]"20,44,16,0"[/color] Name=[color=#0000ff]"textBox1"[/color] VerticalAlignment=[color=#0000ff]"Top"[/color] Grid.Row="10" />[/COLOR]


ويمكن معرفة البدائل للخطأ الموجود عن طريق كتابة كود مثل التالي :
C#:

كود :
[FONT=Tahoma]string alterWords = "";[/FONT]
[FONT=Tahoma]SpellingError error = textBox1.GetSpellingError(0);[/FONT]
[FONT=Tahoma]if (error != null)[/FONT]
[FONT=Tahoma]{[/FONT]
[FONT=Tahoma]foreach (string s in error.Suggestions)[/FONT]
[FONT=Tahoma]{[/FONT]
[FONT=Tahoma]alterWords += s + "\n";[/FONT]
[FONT=Tahoma]}[/FONT]
[FONT=Tahoma]MessageBox.Show("Alternative Words:\n" + alterWords);[/FONT]
[FONT=Tahoma]}[/FONT]
vb.net:

كود :
[FONT=Tahoma]Dim alterWords As String = "" [/FONT]
[FONT=Tahoma]Dim [error] As SpellingError = textBox1.GetSpellingError(0) [/FONT]
[FONT=Tahoma]If [error] IsNot Nothing Then [/FONT]

[FONT=Tahoma]For Each s As String In [error].Suggestions [/FONT]
[FONT=Tahoma]alterWords += s + "" & Chr(10) & "" [/FONT]
[FONT=Tahoma]Next [/FONT]

[FONT=Tahoma]MessageBox.Show("Alternative Words:" & Chr(10) & "" + alterWords) [/FONT]
[FONT=Tahoma]End If [/FONT]

}}}
تم الشكر بواسطة:
#3
ال Data-Binding :

في ال WPF ، نستطيع ربط قيم عناصر بطريقة مباشرة ، مثلاً لربط قيم Slider ب TextBox مباشرة ، نقوم باضافة فقط الجزء التالي للأداة المراد ربطها :

كود :
DataContext = "{Binding ElementName=slider1}" Content = "{Binding Path=Value}"


بالتالي يصبح كود XAML الكامل بالشكل التالي :


كود :
[color=#000080]<Slider Height=[COLOR=#0000ff]"27"[/color] Margin=[color=#0000ff]"20,40,16,0"[/color] Name=[color=#0000ff]"slider1"[/color] VerticalAlignment=[color=#0000ff]"Top"[/color] />[/COLOR]
[color=#ff8000]<Label Height=[COLOR=#0000ff]"28"[/color] DataContext = "{Binding ElementName=slider1}" Content = "{Binding Path=Value}" Margin=[color=#0000ff]"20,72,16,0"[/color] Name=[color=#0000ff]"label1"[/color] VerticalAlignment=[color=#0000ff]"Top"[/color] BorderThickness=[color=#0000ff]"0"[/color]>[/COLOR]


والناتج :

}}}
تم الشكر بواسطة:



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


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