2010-01-25 2 views
0

Я хочу реализовать очень простой элемент управления списком. Он имеет 2 свойства:Как реализовать связанный с данными элемент управления с помощью шаблонов?

  1. RowTemplate (ITemplate)
  2. DataSource (IList)

Реализация управления должна делают каждую строку с помощью шаблона, указанного в RowTemplate передавая соответствующий объект в DataSource списке, так что, если у меня есть свойство, называемое Name в переданном объекте, оно будет доступно с помощью Eval("Name").

Мне нужен пример того, как визуализировать элемент управления, используя RowTemplate и как передать корреспонденту DataSource объект шаблону.


Я читаю документацию MSDN по теме: Data Binding Expression Overview и Binding to Databases, но я просто не могу найти, как реализовать контроль, который проходит объект в шаблон.

ответ

3

Похоже, вы пытаетесь разработать шаблонный элемент управления, привязанный к данным.

По существу вам просто нужно итерировать ваш объект источника данных во время рендеринга основного элемента управления. Для каждого элемента в источнике данных создайте новый экземпляр объекта-контейнера шаблона и добавьте его в элемент управления контейнера. В зависимости от того, что вы расширяете, фактический метод визуализации может отличаться, но если вы расширяете что-то вроде BaseDataList, тогда вы сделаете это в «CreateControlHeirarchy()».

Существует несколько проходов, которые вы можете проверить. Here's a pretty straightforward one.

+0

спасибо womp. Теперь я понимаю, как работают шаблонные элементы управления, привязанные к данным, и мне удалось реализовать свои собственные. –

Смежные вопросы