0

Изучаю еще только WPF, есть сложности в понимании привязки данных к отображению.

Вся привязка осуществляется через binding. Но сами объекты где правильно создавать заполнять?

Примеры очень скудные в книги и понимания у меня особо не появилось. Судя по книге, объекты отображаемые в форме должны быть объявлены в ресурсах. А ресурсы уже можно заполнять динамически данными.

Или я что-то упустил или не дочитал еще?

Например у меня есть combobox, в котором будет список объектов. Список будет динамический.

Правильно будет создать ресурс списка этих объектов и привязать его к combobox, а сам ресурс программно менять?

Спасибо.

pincher1519
  • 2,548
  • Не совсем понятно, что вы подразумеваете под словом "ресурсы". WPF принято писать в парадигме Model-View-ViewModel. View - это интерфейс программы (Window, UserControl, кнопки, списки и проч.), ViewModel - это класс, который содержит свойства, которые привязываются к контролам во View. Model - классы данных и классы бизнеслогики приложения. Что касается комбобокса, то вам нужно создать класс MainWindowViewModel и привязать его к MainWindow.DataContext. Во вьюмодели создать свойство типа List<T> list и привязать его к комбобоксу ItemsSource="{Binding list }". – Bulson Apr 08 '17 at 21:14
  • @Bulson, Это я прекрасно понимаю, постоянно об этом говорится в книжках. Технически не понимаю, как это реализовывать. Есть у меня Window, где, есть combobox, я должен делать binding в нем. Биндинг к чему? Я должен в классе Window что-то объявить и к нему вязаться? Или же создать класс, и в Window создать ресурс этого класса? И потом вытаскивать ресурс из window и заполнять его нужными данными? – pincher1519 Apr 08 '17 at 21:20
  • 1
    Вместо многих слов посмотрите это пример. Там внизу ответа есть ссылка, по которой вы сможете скачать пример целиком. – Bulson Apr 08 '17 at 21:23
  • @bulson, после редактирования вашего коммента стала более понятно. Попробую что-то такое сделать. Где бы увидеть рабочий пример? В книге все очень упрощенно рассказывается, банальные и абстрактные примеры не имеющие общего с реальными задачами. Как будто все уже есть, а они что-то к чему-то присоединяют – pincher1519 Apr 08 '17 at 21:23
  • Уже дал ссылку выше. – Bulson Apr 08 '17 at 21:23
  • @Bulson, спасибо. думаю это решит мою проблему с пониманием. – pincher1519 Apr 08 '17 at 21:24
  • 1
    @pincher1519: Вот вам ещё пример: http://ru.stackoverflow.com/q/573050/10105 – VladD Apr 09 '17 at 02:50

0 Answers0