Когда дело доходит до привязки данных, я обнаружил, что эта страница если внимательно прочитать ответы на большинство вопросов, возникающих у новичков.
Чтобы ответить на вопрос: оповещение о добавлении всех элементов заключается в том, чтобы сообщить ComboBox, где взять его элементы, это делается с помощью свойства ItemsSource
.
Вы можете установить это либо в XAML, либо в коде, в то время как вам потребуется выражение для привязки в XAML, которое обычное назначение должно выполнять в коде:
comboBox.ItemsSource = thingList;
Если вы не укажете далее, как должны отображаться эти объекты в списке, будет вызван метод ToString
, если он не будет переопределен, вы, как правило, получите путь к классу вашего объекта. Существует два основных способа сообщить приложению, как отображать объект:
Первый и более тяжелый вариант - Шаблоны данных , который используется для отображения сложных данных с использованием элементов управления (которые, в свою очередь, могут содержать элементы, шаблоны и т. Д.), Второй способ - использование облегченных свойств, таких как DisplayMemberPath
, в котором должно быть указано имя свойства, которое должно отображаться (обычно просто строка).
Если ваш список изменяется и поле со списком должно обновляться само по себе, источник должен реализовать INotifyCollectionChanged
, в большинстве случаев вы будете использовать стандартную реализацию ObersableCollection<T>
.