Копирование выделенных строк из одного datagridview в другой VB.NET
У меня есть 2 dgvw на 2 формы. Первый dgvw имеет столбец checbox.Я хочу скопировать проверенные строки из dgvw 1 в dgvw 2..без какого-либо нажатия кнопки..я имею в виду, что строки будут копировать себя, как только пользователь установит флажок строки...
Что я уже пробовал:
Я использую приведенный ниже код :
Private Sub userdatagrid_SelectionChanged(sender As Object, e As EventArgs) Handles userdatagrid.SelectionChanged Dim c, t As Integer Selected.dg2.Columns.Clear() For t = 0 To userdatagrid.Columns.Count - 1 Selected.dg2.Columns.Add(userdatagrid.Columns(t).Clone()) Next For c = 0 To userdatagrid.Rows.Count - 1 If userdatagrid.Rows(c).Cells(0).Value = True Then Selected.dg2.Rows.Add(userdatagrid.Rows(c).Cells(0).Value, userdatagrid.Rows(c).Cells(1).Value, userdatagrid.Rows(c).Cells(2).Value, userdatagrid.Rows(c).Cells(3).Value, userdatagrid.Rows(c).Cells(4).Value, userdatagrid.Rows(c).Cells(5).Value, userdatagrid.Rows(c).Cells(6).Value, userdatagrid.Rows(c).Cells(7).Value, userdatagrid.Rows(c).Cells(8).Value, userdatagrid.Rows(c).Cells(9).Value, userdatagrid.Rows(c).Cells(10).Value, userdatagrid.Rows(c).Cells(11).Value, userdatagrid.Rows(c).Cells(12).Value, userdatagrid.Rows(c).Cells(13).Value, userdatagrid.Rows(c).Cells(14).Value, userdatagrid.Rows(c).Cells(15).Value, userdatagrid.Rows(c).Cells(16).Value, userdatagrid.Rows(c).Cells(17).Value, userdatagrid.Rows(c).Cells(18).Value, userdatagrid.Rows(c).Cells(19).Value, userdatagrid.Rows(c).Cells(20).Value, userdatagrid.Rows(c).Cells(21).Value, userdatagrid.Rows(c).Cells(22).Value, userdatagrid.Rows(c).Cells(23).Value, userdatagrid.Rows(c).Cells(24).Value, userdatagrid.Rows(c).Cells(25).Value, userdatagrid.Rows(c).Cells(26).Value, userdatagrid.Rows(c).Cells(27).Value, userdatagrid.Rows(c).Cells(28).Value, userdatagrid.Rows(c).Cells(29).Value, userdatagrid.Rows(c).Cells(30).Value) End If Next End Sub Private Sub form2_load(sender As Object, e As EventArgs) Handles MyBase.Load Dim img As DataGridViewImageColumn img = dg2.Columns(1) img.ImageLayout = DataGridViewImageCellLayout.Stretch End Sub Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click Selected.Show() End Sub
Вопрос
Вы не можете голосовать на своем собственном посту
0
Здравствуйте, я сейчас использую этот код :
Private Sub userdatagrid_SelectionChanged(sender As Object, e As EventArgs) обрабатывает userdatagrid.SelectionChanged
Dim c, t как целое число
Выбран.почтовый индекс dg2.Столбцы.Четкий()
Для t = 0 - userdatagrid.Столбцы.Количество - 1
Выбран.почтовый индекс dg2.Столбцы.Добавить(userdatagrid.Столбцы(t).Клон())
Следующий
Для c = 0 в userdatagrid.Rows.Количество - 1
Если userdatagrid.Строки(c).ячейки(0).значение = True тогда
Selected.dg2.Rows.Add(userdatagrid.Rows(c).Cells(0).Value, userdatagrid.Rows(c).Cells(1).Value, userdatagrid.Rows(c).Cells(2).Value, userdatagrid.Rows(c).Cells(3).Value, userdatagrid.Rows(c).Cells(4).Value, userdatagrid.Rows(c).Cells(5).Value, userdatagrid.Rows(c).Cells(6).Value, userdatagrid.Rows(c).Cells(7).Value, userdatagrid.Rows(c).Cells(8).Value, userdatagrid.Rows(c).Cells(9).Value, userdatagrid.Rows(c).Cells(10).Value, userdatagrid.Rows(c).Cells(11).Value, userdatagrid.Rows(c).Cells(12).Value, userdatagrid.Rows(c).Cells(13).Value, userdatagrid.Rows(c).Cells(14).Value, userdatagrid.Rows(c).Cells(15).Value, userdatagrid.Rows(c).Cells(16).Value, userdatagrid.Rows(c).Cells(17).Value, userdatagrid.Rows(c).Cells(18).Value, userdatagrid.Rows(c).Cells(19).Value, userdatagrid.Rows(c).Cells(20).Value, userdatagrid.Rows(c).Cells(21).Value, userdatagrid.Rows(c).Cells(22).Value, userdatagrid.Rows(c).Cells(23).Value, userdatagrid.Rows(c).Cells(24).Value, userdatagrid.Rows(c).Cells(25).Value, userdatagrid.Rows(c).Cells(26).Value, userdatagrid.Rows(c).Cells(27).Value, userdatagrid.Rows(c).Cells(28).Value, userdatagrid.Rows(c).Cells(29).Value, userdatagrid.Rows(c).Cells(30).Value)
Конец, Если
Следующий
Конец Подводной Лодки
Частная суб form2_load(отправителя как объект, а равно EventArgs) обрабатывает ключевое слово mybase.Загрузить
Dim img Как DataGridViewImageColumn
img = dg2.Columns(1)
НВФ.ImageLayout = DataGridViewImageCellLayout.Протяжение
Конец Подводной Лодки
Private Sub Button6_Click(sender As Object, e As EventArgs) обрабатывает Button6.Click
Выбранный.Покажите()
Конец Подводной Лодки
Проблема с этим кодом заключается в том, что если я проверяю только одну строку/флажок и нажимаю на кнопку 6, то dgvw на форме 2 появляется в br rmpty. Мне нужно выбрать/проверить две строки, а затем появится только одна из них. Вторая проблема заключается в том, что предположим, что пользователь проверяет только один флажок и нажимает на кнопку , dgv в форме 2 пуст(я уже говорил об этом), но если пользователь закрывает форму 2 и снова открывает ее с помощью button6, он дает исключение индекса вне диапазона в форме 2 IMG=DG2.COLUMNS(1) ....Как исправить эти проблемы ??
Maciej Los
Что такое: Selected
- Кажется, это вторая Винформа...