Цикл через UserControl в WPF

Эй, мне было интересно, можно ли пройти через несколько элементов управления WPF. Допустим, у меня есть элемент управления, который я хочу отображать (каждый раз с разными данными) 10-20 раз в зависимости от того, что у него есть.

Единственная альтернатива, которую я нашел, заключалась в том, чтобы вручную создать 20 таких пользовательских элементов управления и скрыть те, которые я не использовал.

Можно ли их зациклить?


person puttputt    schedule 16.05.2009    source источник


Ответы (2)


Вероятно, вам придется уточнить свой вопрос.

Что вы имеете в виду под "сквозной петлей"?

Когда вы говорите, что хотите отобразить элемент управления "10-20 раз", вы имеете в виду, что у вас есть один элемент управления, который нужно изменить 10-20 раз или 10-20 элементов управления?

Вам может быть интересно изучить шаблоны данных и элементы управления. Вы можете привязать ItemsControl к ObservableCollection, содержащему разные типы объектов, а затем определить разные DataTemplates для каждого типа объекта, содержащегося в коллекции. ItemsControl будет отображать соответствующий элемент управления для каждого объекта, содержащегося в ObservableCollection.

person Community    schedule 16.05.2009
comment
Извините, что так расплывчато. У меня есть настраиваемый пользовательский элемент управления, который я хочу отображать более одного раза. Например: в зависимости от того, сколько у меня данных, я хочу, чтобы они отображались. Таким образом, если бы у меня было 5 объектов, XAML мог бы выглядеть как ‹x:Usercontrol 1› ‹x:Usercontrol 2› ‹x:Usercontrol 3› ‹x:Usercontrol 4› ‹x:Usercontrol 5› с соответствующими данными. Я собираюсь изучить эти шаблоны данных, чтобы убедиться, что это то, что я ищу. - person puttputt; 19.05.2009
comment
Я, вероятно, использую UserControls совершенно неправильно, эти DataTemplates выглядят так, как я должен использовать. - person puttputt; 19.05.2009
comment
ItemsControl и DataTemplates звучат как то, что вам нужно. - person ; 19.05.2009

Я предполагаю, что вы уже используете шаблоны данных и спрашиваете, как перебирать объекты, созданные для представления ваших данных из DataTemplate. Я прав? Для этого вам нужно использовать VisualTreeHelper< /а>.

person Gus Cavalcanti    schedule 17.05.2009