Каков наилучший способ доступа к произвольному количеству элементов управления в WPF DataTemplate? - PullRequest
0 голосов
/ 19 августа 2010

Я создаю приложение для анкетирования, которое показывает ряд вопросов пользователю.

Чтобы упростить модель, вопрос представлен

class Question{
    String name;
    bool ComboBox;
    String[] choices;
}

В коде позади у меня есть ObservableCollection, которая используется DataContext.

XAML выглядит так

...
<ItemsControl ItemsSource="{Binding}" ItemTemplateSelector="{...}">
</ItemsControl>

ItemTemplateSelector выбирает ItemTemplate на основе свойства ComboBox, указанного в объекте Question. Один ItemTemplate показывает выбор String [] внутри ComboBox, другой создает столько TextBox, сколько строк в массиве.

Каков наилучший способ собрать все данные, введенные пользователем.

1 Ответ

0 голосов
/ 19 августа 2010

Самый простой способ - это получить ответы в классе вопросов. После того, как пользователь заполнит анкету, просто переберите свою коллекцию, чтобы получить ответы. Добавьте еще одно свойство, например AnsptedIndex, чтобы сохранить индекс, выбранный пользователем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...