Я использую CheckBoxList, чтобы определить, какие столбцы отображаются в GridView.Я заполняю CheckBoxList с помощью запроса типа
select column_name, data_type from information_schema.columns
where table_name = 'myTable'
После того, как пользователь выбрал столбцы (с различными типами данных в них), которые он хочет отобразить, он нажимает кнопку, и следующий фрагмент кода VB генерируетGridView.
For Each item As ListItem In chooseColsList.Items
If item.Selected Then
Dim bf As New BoundField()
'PRODUCES BUGGY RESULTS BECAUSE APPLIED TO ALL BoundFields
bf.DataFormatString = "{0:dd-MMM-yyyy}"
bf.ApplyFormatInEditMode = True
bf.DataField = item.Value
bf.HeaderText = item.Value
bf.SortExpression = item.Value
statusReportGrid.Columns.Add(bf)
End If
Next
Я хочу применить ТОЛЬКО к DataFormatString к столбцам с типом данных date.Однако я не нашел способа программно определить тип данных в привязываемом столбце, ни способа передачи этой информации в Control.Эта информация существует в information_schema, как показано в моем запросе, но я не знаю, как ее извлечь и использовать для динамического настройки моих BoundFields.Важно отметить, что я использую SqlDataSource .
Я экспериментировал почти со всеми возможными решениями, которые я могу придумать и в итоге получить здесь.
Заранее спасибо за помощь, это ОЧЕНЬ ценится:)