14-10-12, 08:02 PM
تصميم style باستخدام Triggers .
يمكنك ال Triggers من تحديد حالات للاداة مرتبطة بحدث مرور الماوس او غيره ، فمثلاً لتلوين مربع نص بلون مختلف عند حصوله على التحديد نكتب style بالشكل التالي :
والناتج لمربع النص الذي عليه التحديد :
برمجياً :
مثال منقول من Pro CSharp 2008 ، اضافة عناصر للقائمة بها مجموعة من ال styles ومن ثم تحديد style زر الامر ليحتوي على أحدها بالشكل التالي مثلاً :
والناتج :
يمكنك ال Triggers من تحديد حالات للاداة مرتبطة بحدث مرور الماوس او غيره ، فمثلاً لتلوين مربع نص بلون مختلف عند حصوله على التحديد نكتب style بالشكل التالي :
كود :
[color=#000080]<Window.Resources>[/color]
[color=#800080]<Style x:Key ="txtstyle" TargetType = "{x:Type TextBox}">[/color]
[color=#000080]<Setter Property = "Background" Value = "White"/>[/color]
[color=#000080]<Style.Triggers>[/color]
[color=#000080]<Trigger Property = "IsFocused" Value = "True">[/color]
[color=#000080]<Setter Property = "Background" Value = "Yellow"/>[/color]
[color=#000080]</Trigger>[/color]
[color=#000080]</Style.Triggers>[/color]
[color=#800080]</Style>[/color]
[color=#000080]</Window.Resources>[/color]والناتج لمربع النص الذي عليه التحديد :
برمجياً :
مثال منقول من Pro CSharp 2008 ، اضافة عناصر للقائمة بها مجموعة من ال styles ومن ثم تحديد style زر الامر ليحتوي على أحدها بالشكل التالي مثلاً :
كود :
[FONT=Tahoma]public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
// Add items to our list box.
lstStyles.Items.Add("TiltStyle");
lstStyles.Items.Add("GreenStyle");
lstStyles.Items.Add("MouseOverStyle");
}
protected void comboStyles_Changed(object sender, RoutedEventArgs args)
{
// Get the selected style name from the list box.
System.Windows.Style currStyle = (System.Windows.Style)
FindResource(lstStyles.SelectedValue);
// Set the style of the button type.
this.btnMouseOverStyle.Style = currStyle;
}
}[/FONT]والناتج :
