Рейтинг:
1
pravin9455
я попробовал с решением 2 ниже кода, и он отлично работает, когда я помещаю эту datagrid в форму.
Но когда я запускаю форму, столбцы отображаются два раза, то есть 10 столбцов
ААА|ВВВ|ССС|ДДД|ЕЕЕ|ААА|ВВВ|ССС|ДДД|ЕЕЕ
Скрыть Код Скопировать
Публичный Класс ClsDgvJournal
Наследует DataGridView
Общественные Саб Новый()
Ширина = 500
Высота = 200
Dim Col1 = новый столбец DataGridViewTextBoxColumn с {.HeaderText = "AAA", .Name = "A"}
Дим Столбец Col2 = Новый Вариант Datagridviewtextboxcolumn С {.HeaderText = "ВВВ", .Наименование = "Б"}
Dim Col3 = новый столбец DataGridViewTextBoxColumn с {.HeaderText = "CCC", .Name = "C"}
Дим Col4 = Новый Вариант Datagridviewtextboxcolumn С {.HeaderText = "ДДД", .Наименование = "Д"}
Дим Col5 = Новый Вариант Datagridviewtextboxcolumn С {.HeaderText = "еее", .Наименование = "Е"}
Меня.Столбцы.AddRange({Col1, Col2, Col3, Col4, Col5})
Конец Подводной Лодки
End Класса
pravin9455
я просто добавил элемент управления datagridview в форму и запустил тест .Ничего не буду делать .
когда я добавляю элемент управления в форму он показывает только пять столбцов
когда я запускаю его, он показывает десять столбцов
CHill60
"когда я добавляю элемент управления в форму, он показывает только пять столбцов" - таким образом, элемент управления имеет 5 столбцов до запуска вашей программы.
"когда я запускаю его, он показывает десять столбцов" - потому что вы не очищаете коллекцию столбцов перед тем, как снова добавить 5 столбцов.
pravin9455
я использую эту datagrid для добавления новой строки данных в таблицу sql, а не для отображения данных.
поскольку я хочу эту datagrid на нескольких формах стараясь избежать создания столбцов каждый раз когда я добавляю datagrid на новую форму создавая элемент управления классом со столбцами по умолчанию
CHill60
"я использую эту datagrid для добавления новой строки данных в таблицу sql, а не для отображения данных." Если вам не нужно отображать данные, то не используйте элемент управления пользовательским интерфейсом! Просто используйте DataTable
Рейтинг:
0
OriginalGriff
колонка.Метод Add позволяет добавить фактический столбец в DGV, а не указывать нужное количество столбцов. Если вы подумаете об этом, это имеет смысл, потому что столбец - это больше, чем просто черное пространство-это дескриптор того, что содержит столбец, и должен, по крайней мере, иметь строку для заголовка и строку для имени доступа: Класс DataGridViewColumnCollection (System.Окна.Формы) | Microsoft Docs[^]
Коллекция столбцов-это схема таблицы, которая управляет отображением данных в строках.
Самый простой способ сохранить их все одинаковыми-это использовать одни и те же данные: установите свойство DataSource DGV, и оно извлечет из него схему, и вам больше не нужно будет добавлять столбцы.