我在DataGridView中有一个关于for循环的问题。我想加一个带字符串的数字。例如,当我选择单元格1到3并运行我的代码时,它会显示,单元格1应该是"LTS-1",单元格2应该是"LTS-2“,单元格3应该是"LTS-3”。但在DataGridView中,总是相反,这意味着单元格1为"LTS-3",单元格2为"LTS-2“,单元格3为"LTS-1”。当然,我尝试了反向循环,它也不起作用。下面是我在DataGridView中编写的代码。我做错什么了吗?

Dim input1 As String
input1 = InputBox("Please, enter a regular text.", "Input Box", "LTS")
If input1 = "" Then Exit Sub
'Dim i As Integer
'For i = DataGridView1.SelectedCells.Count - 1 To 0 Step -1
' DataGridView1.SelectedCells(i).Value = input1 & "-" & i + 1
' DataGridView1.CurrentCell.Value = input1 & "-" & i + 1
'Next
'For i = 0 To DataGridView1.SelectedCells.Count - 1
' DataGridView1.SelectedCells(i).Value = input1 & "-" & i + 1
' DataGridView1.CurrentCell.Value = input1 & "-" & i + 1
'Next
Dim j As Integer = 0
For Each selCells As DataGridViewCell In DataGridView1.SelectedCells
'DataGridView1.CurrentCell.Value = input1 & "-" & j + 1
'DataGridView1.SelectedCells(0).Value = input1 & "-" & j + 1
DataGridView1.SelectedCells(j).Value = input1 & "-" & j + 1
j = j + 1
Next发布于 2020-12-13 15:30:55
你可以试试这个:
Dim input1 As String
input1 = InputBox("Please, enter a regular text.", "Input Box", "LTS")
If input1 = "" Then Exit Sub
Dim list_cells As New List(Of DataGridViewCell)
Dim j As Integer = 0
For Each selCells As DataGridViewCell In DataGridView1.SelectedCells
list_cells.Add(selCells)
Next
list_cells = list_cells.OrderBy(Function(x) x.RowIndex).ThenBy(Function(x) x.ColumnIndex).ToList
For Each selCells As DataGridViewCell In list_cells
selCells.Value = input1 & "-" & j + 1
j = j + 1
Next谢谢
https://stackoverflow.com/questions/65274069
复制相似问题