Я создаю программу доступа к базе данных, которая динамически создает столбцы datagrid, а также динамически запрашивает данные на основе настроек учетной записи. У меня есть несколько datagrids, которые работают одинаковыми манерами, и по большей части они отлично работают. Все мои текстовые столбцы связывают с данными, которые я использую для хранения всех данных, однако я не могу понять, как заставить столбцы шаблонов привязываться к столбцу данных. Я использую столбцы шаблонов как столбцы datepicker, если это вообще помогает.Связывание столбца шаблона datagrid (как столбца datepicker) с столбцом datatable
Нагрузка на визуальные изображения: то есть столбцы загружаются идеально в том смысле, что я могу видеть и взаимодействовать с ними без проблем. Основная проблема заключается в их привязке к самим данным. Любая помощь приветствуется. Помните, что datagrids всегда существуют, это только столбцы, которые полностью динамичны.
Вот основная версия того, что я сделал (В МОФ)
<ResourceDictionary>
<DataTemplate x:Key="datePickerTemplate">
<DatePicker Text="{Binding}"/>
</DataTemplate>
</ResourceDictionary>
<DataGrid x:Name="datagrid_1" ItemsSource = "{Binding}" AutoGenerateColumns = "False">
(C#)
//creates a text column (works just fine)
DataGridTextColumn textcolumn = new DataGridTextColumn();
textcolumn.Header = "text column";
textcolumn.Binding = new Binding("bind test column"); //text columns bind fine
datagrid_1.Columns.Add(setexpmeetdatecolumn);
//create template column
DataGridTemplateColumn templatecolumn = new DataGridTemplateColumn();
templatecolumn.Header = "date template column";
templatecolumn.CellTemplate = (DataTemplate)FindResource("datePickerTemplate");
(problem ->) templatecolumn.Binding = new Binding("bind test column"); //this is what I need to accomplish, but am not finding any legible answers that are coherent to understand.
datagrid_1.Columns.Add(templatecolumn);
Являются ли данные, которые выходят из базы данных? Я немного смущен относительно того, почему вы используете datepicker для всех столбцов, поскольку я предполагаю, что хотя бы один столбец будет недействительным. –
Вы правы, Parth. Большинство столбцов - это просто текстовые столбцы, содержащие различные фрагменты информации. Есть только 4 столбца, которые фактически содержат даты, и поэтому существует сочетание дат и текстовых данных. – caradon
Можете ли вы попробовать выполнить привязку в порядке, указанном в этом сообщении: http://stackoverflow.com/a/1755556/2310818? –