מדריך WPF

מדריך WPF – פקדים בסיסיים: ComboBox

‏ • Sela

הפקד ComboBox מאפשר למשתמש לבחור ערך יחיד מתוך רשימה נפתחת של ערכים. העבודה עם פקד ComboBox נעשית בצורה דומה מאוד לעבודה עם פקד ListBox.

מדריך WPF – פקדים בסיסיים: ComboBox

יצירת ComboBox עם מספר ערכים

באופן דומה לפקד ListBox, התכונה החשובה בפקד ComboBox היא התכונה Items שאליה ניתן להכניס מספר אלמנטים מטיפוס ComboBoxItem, כאשר כל אלמנט כזה מייצג אלמנט ברשימה הנפתחת.

יצירת רשימה נפתחת עם מספר ערכים קבועים יכולה להתבצע באמצעות קוד הXAML הבא:

<Window x:Class="ControlsDemo.MainWindow"
       >="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
       >:x="http://schemas.microsoft.com/winfx/2006/xaml"
       Title="MainWindow"
       Height="350"
       Width="525">
  <StackPanel>
    <ComboBox>
      <ComboBoxItem Content="Item 1" />
      <ComboBoxItem Content="Item 2" />
      <ComboBoxItem Content="Item 3" />
    </ComboBox>
  </StackPanel
>
</
Window
>

והתוצאה

מדריך WPF – פקדים בסיסיים: ComboBox

הוספת אלמנטים ל ComboBox באמצעות קוד #C

באופן דומה לפקד ListBox, ניתן לטעון ערכים בצורה דינמית לתוך ComboBox ע"י שימוש בקוד #C. כדי לגשת לפקד ה ComboBox מקוד ראשית יש לתת לו שם ע"י שימוש בx:Name, לאחר מכן נוסיף אלמנטים מסוג ComboBoxItem לתכונה Items של ה ComboBox.

להלן קוד XAML וקוד #C שעושים זאת:

<Window x:Class="ControlsDemo.MainWindow"
       >="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
       >:x="http://schemas.microsoft.com/winfx/2006/xaml"
       Title="MainWindow"
       Height="350"
       Width="525">
  <StackPanel>
    <ComboBox x:Name="comboBox" />
  </StackPanel
>
</
Window
>

והקוד בשפת #C:

using System.Windows;
using
System.Windows.Controls;

namespace
ControlsDemo
{
 
/// <summary>
  /// Interaction logic for MainWindow.xaml
  /// </summary>
  public partial class MainWindow : Window
  {
   
public
MainWindow()
    {
      InitializeComponent();

     
for (int
i = 0; i < 5; ++i)
      {
       
ComboBoxItem newItem = new ComboBoxItem
();
        newItem.Content =
"Item " + i;
        comboBox.Items.Add(newItem);
      }
    }
  }
}

תוצאת הרצת הקוד הנ"ל

מדריך WPF – פקדים בסיסיים: ComboBox

 

האירוע SelectionChanged

האירוע SelectionChanged מופעל כאשר ישנו שינוי באלמנט שנבחר ברשימה. ניתן להשיג את האלמנט הנבחר החדש ע"י התכונה SelectedItem.

הקוד הבא מופעל כאשר הבחירה משתנה ומדפיס את האיבר החדש שנבחר:

קוד הXAML:

<Window x:Class="ControlsDemo.MainWindow"
       >="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
       >:x="http://schemas.microsoft.com/winfx/2006/xaml"
       Title="MainWindow"
       Height="350"
       Width="525">
  <StackPanel>
    <ComboBox x:Name="comboBox"
             SelectionChanged="comboBox_SelectionChanged" />
  </StackPanel
>
</
Window
>

קוד #C:

private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
 
MessageBox.Show(comboBox.SelectedItem);
}

תגיות: , , , ,

arikp

אריק פוזננסקי הוא יועץ בכיר ומרצה בסלע. הוא השלים שני תארי B.Sc. במתמטיקה ומדעי המחשב בהצטיינות יתרה בטכניון. לאריק ידע נרחב בטכנולוגיות מיקרוסופט, כולל .NET עם C#, WPF, Silverlight, WinForms, Interop, COM/ATL, C++ Win32 ו reverse engineering.

תגובות בפייסבוק