Привязка DataGridViewColumn к DataColumn - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Привет всем! У меня есть набор данных (DataSet), в нем таблица (DataTable) с огромным количеством колонок. Нужно отображать эту таблицу в DataGridView, но далеко не все колонки, а только некоторые. Подскажите, пожалуйста, возможно ли каким-то образом подключить мой DataGridView или BindingSource не ко всей DataTable, а только к некоторым её колонкам? Только подключить так, чтобы не скрывать визуально ненужные DataColumn, а именно, чтобы они вообще в DataGridView и в BindingSource не фигурировали в целях экономии памяти и скорости работы программы, бо, как я сказал, колонок в DataTable очень много. Спасибо!

Решение задачи: «Привязка DataGridViewColumn к DataColumn»

textual
Листинг программы
    Public Sub DataBind(ByVal Grid As DataGridView, ByVal Table As DataTable, ViewColumnNames() As String, ByVal HiddenColumnNames() As String, Optional ByVal FrozenColumnName As String = "")
 
        Grid.AutoGenerateColumns = False
 
        Grid.DataSource = Nothing : Grid.DataSource = Table
 
        Dim c As DataGridViewColumn
 
        For Each s As String In ViewColumnNames
 
            c = New DataGridViewTextBoxColumn
 
            c.Name = s
            c.DataPropertyName = s
            c.HeaderText = Table.Columns(s).Caption
            c.Visible = Not (Array.IndexOf(HiddenColumnNames, s) >= 0)
 
            Grid.Columns.Add(c)
 
        Next
 
        If FrozenColumnName = "" Then Exit Sub
 
        For n As Integer = 0 To Grid.Columns(FrozenColumnName).Index
            Grid.Columns(n).Frozen = True
        Next
 
    End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.167 из 5