Wendelius
Попробуйте справиться с этим Практическое руководство.ColumnDisplayIndexChanged Событие (System.Окна.Формы) | Microsoft Docs[^] вместо
ДОБАВЛЕН
Если я правильно понимаю ситуацию, вы можете использовать событие, упомянутое выше, и создавать новый источник данных каждый раз, когда порядок меняется.
Например, если у вас есть два объекта DataGridView в окне (dgv1 и dgv2), рассмотрите следующий код
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim data1 As DataTable = New DataTable()
data1.Columns.Add("First")
data1.Columns.Add("Second")
data1.Columns.Add("Third")
dgv1.DataSource = data1
DisplayColumns()
End Sub
Private Sub dgv1_ColumnDisplayIndexChanged(sender As Object, e As DataGridViewColumnEventArgs) Handles dgv1.ColumnDisplayIndexChanged
DisplayColumns()
End Sub
Private Sub DisplayColumns()
Dim data2 As DataTable = New DataTable()
data2.Columns.Add("Ordinal", GetType(Integer))
data2.Columns.Add("ColumnName", GetType(String))
Dim colList = From column In dgv1.Columns.Cast(Of DataGridViewColumn) Order By column.DisplayIndex
For Each col As DataGridViewColumn In colList
data2.Rows.Add(col.DisplayIndex, col.HeaderText)
Next
dgv2.DataSource = data2
End Sub
End Class
Member 14588284
по сути я хочу этого
когда я изменил положение столбца datagrid, то
еще одна строка datagrid изменяется следующим образом
мой первый текст заголовка столбцов datagrid
С FILTRE2
.Грядки.Четкий()
Для s = 0 до RAPOR.Столбцы.Количество - 1
.Строки.Добавить()
.Rows(.Rows.Граф - 1).Ячейки(0).Значение = .Строки.Рассчитывать
.Rows(.Rows.Граф - 1).Ячейки(1).Значение = RAPOR.Столбцы(ы).HeaderText
Следующий
Конец С
Member 14588284
Большое спасибо
я использовал этот код
его рабочий Тан снова
Частная суб RAPOR_ColumnDisplayIndexChanged(как byval отправителя как объект, как byval E Как системы.Окна.Формы.DataGridViewColumnEventArgs) обрабатывает RAPOR.ColumnDisplayIndexChanged
FILTRE2.строки.Четкий()
Тусклый коллист = из колонки в РАПОРЕ.Столбцы.Cast(Of DataGridViewColumn)() порядок по столбцам.DisplayIndex
Для каждого col как DataGridViewColumn в colList
FILTRE2.Строк.Добавить(кол.DisplayIndex, коль.HeaderText)
Следующий
Конец Подводной Лодки