#mvvm
#mvvm
Вопрос:
я должен создать диалоговое окно, в котором столбцы должны генерироваться во время выполнения, ранее я использовал таблицу данных WPF, поэтому генерация столбцов во время выполнения не была проблемой. Теперь я должен использовать View Model, мне нужно иметь свойства для любых полей, которые я хочу отобразить в view в виде столбцов. количество столбцов неизвестно во время разработки, установить привязку для таблицы данных невозможно.Было бы безумием, если бы я создавал свойства во время выполнения с использованием отражения, есть ли какой-либо способ, которым я могу привязать поля, созданные во время выполнения, к столбцу таблицы данных.
Комментарии:
1. Использовали ли вы
AutoGeneratedColumns = true
?2. Я не использую WPF grid, его таблицу данных Xceed, которая не обладает таким свойством. он создает столбцы для свойств, определенных в ViewModel.
3. Есть ли четкая цель использования компонентов третьей части? Если да — это скорее вопрос Xceed, а не MVVM.
4. Это вызывается
AutoCreateColumns
в сетке xceed. Попробуйте это… В противном случае посмотрите на ответ Майка. ExpandoObject кажется хорошей идеей, если вы используете .NET 4.0.
Ответ №1:
Если вы работаете на .NET 4, вы можете использовать ExpandoObject. Он реализует INotifyPropertyChanged для вас.