Создайте класс, который представляет ObservableCollection<sample>
как свойство с именем, скажем, Samples
. Создайте экземпляр этого класса, заполните его коллекцию и добавьте класс в словарь ресурсов окна с ключом, скажем, Data
. Переопределите ToString()
в классе sample
, чтобы он возвращал то, что вы хотите видеть в ListBox
.
Тогда сделайте это:
<ListBox ItemsSource="{StaticResource Data, Path=Samples}"/>
Без переопределения ToString()
вы можете указать привязку дисплея:
<ListBox ItemSource="{StaticResource Data, Path=Samples}"
DisplayMemberBinding="{Binding Path=trackName"/>
Обратите внимание, что trackName
должно быть свойством, а не полем.
Вы заметите, что я не создаю программно элементы управления WPF, а вместо этого использую привязку данных, чтобы сделать это для меня. Это основная фундаментальная концепция разработки приложений WPF.