Использование DataBinding и DataTemplate при помощи Expression Blend в Silverlight - Создание шаблона для элементов списка в Blend
ОГЛАВЛЕНИЕ
Создание шаблона для элементов списка в Blend
До того, как мы продолжим, давайте удалим шаблон для элементов списка и заново создадим его в Blend. Мы просто удалим его и заново закроем ListBox. Затем мы заново обработаем приложение и откроем его в Blend. В Blend мы щелкнем на ListBox и затем выберем Object > EditOtherTemplates > EditItemTemplate > Create Empty, как это показано на рисунке 7-20
Рисунок 7-20. Создание ListItemTemplate в Blend
Как только вы выберете данный пункт, вам предоставят диалоговое окно ресурсов шаблона данных (DataTmeplate Resource), как показано на рисунке 7-21, где вы можете решить, стоит ли вам создавать шаблон данных для всего приложения, или же для конкретного документа (чаще всего выбирается стандартная опция сохранения шаблона в документе)
Рисунок 7-21. Диалоговое окно создания DataTemplate (Create DataTemplate)
Обратите внимание на то, что в бета-версии существует ошибка и если вы откроете нижний выпадающий список и выберете ListBox вместо стандартного “user Control”, то ваш код будет скомпилированневерно
Нажав на кнопку OK, вы создадите пустой шаблон, который затем сможете заполнить, как и любой другой элемент пользовательского интерфейса (более того, Blend начинает с элемента Grid). Мы добавим элемент StackPanel к нему , как это показано на рисунке 7-22. Расположив StackPanel, мы можем перетащить текстовые поля точно так же, как мы бы сделали это с любыми другими элементами управления.
Рисунок 7-22. Создание DataStackPanel для ListItem
При создании шаблона элементов списка нам необходимо привязать набор Books в качестве источника данных к текстовым полям, а также поля к свойствам класса Book, как это сделано на рисунке 7-23
Рисунок 7-23. Привязка свойств класса Book
Обратите внимание на то, что вы создаете BookDS точно так же, как вы создали LibraryDS, нажав на кнопку +CLR object.