Поделиться через


Практическое руководство. Добавление данных в ItemsControl

Обновлен: Ноябрь 2007

ItemsControl имеет устанавливаемое свойство ItemsSource, которое позволяет вам добавлять данные в ItemsControl. Элементы в ItemsControl имеют тип ItemCollection. В этом примере демонстрируется создание ObservableCollection<T> с именем Colors, которое добавляется в ListBox.

Пример

Public Class myColors
    Inherits ObservableCollection(Of String)

    Public Sub New()

        Add("LightBlue")
        Add("Pink")
        Add("Red")
        Add("Purple")
        Add("Blue")
        Add("Green")

    End Sub
End Class
public class myColors : ObservableCollection<string>
{
    public myColors()
    {
        Add("LightBlue");
        Add("Pink");
        Add("Red");
        Add("Purple");
        Add("Blue");
        Add("Green");
    }
}

После получения коллекции вы можете осуществить привязку коллекции к ItemsControl, такому как ListBox. Следующий пример показывает, как создать коллекцию для добавления в список путем создания ObjectDataProvider и дальнейшей привязки ее к ListBox с помощью свойства ItemsSource.

<Canvas.Resources>
  <src:myColors x:Key="Colors"/>
</Canvas.Resources>
<ListBox Name="myListBox" HorizontalAlignment="Left" SelectionMode="Extended" 
      Width="265" Height="55" Background="HoneyDew" SelectionChanged="myListBox_SelectionChanged"
      ItemsSource="{Binding Source={StaticResource Colors}}" IsSynchronizedWithCurrentItem="true">
</ListBox>

Полный пример см. в разделе Пример использования элемента управления ListBox.