#vb.net
#vb.net
Вопрос:
Мне нужна помощь в том, как изменить имя переменной с помощью цикла for.
Затемните «DGV2Max» amp; j, я хочу, чтобы это было так.
это делается для минимизации моей строки кодов.
For j As Integer = 1 To 29 Step 1
Dim DGV2Max1 As New DataGridViewTextBoxColumn
DGV2Max1.DataPropertyName = "Max1"
DGV2Max1.HeaderText = "Max1"
DGV2Max1.Name = "Max1"
DataGridView2.Columns.Add(DGV2Max1)
Next
Ответ №1:
Если вы просто используете переменную для ее добавления DataGridView2
, то не беспокойтесь об изменении имени переменной. Используйте свою переменную цикла и добавьте ее в свои свойства:
For j As Integer = 1 To 29 Step 1
Dim DGV2MaxCol As New DataGridViewTextBoxColumn
DGV2MaxCol.DataPropertyName = "Max" amp; j
DGV2MaxCol.HeaderText = "Max" amp; j
DGV2MaxCol.Name = "Max" amp; j
DataGridView2.Columns.Add(DGV2MaxCol)
Next
Область действия этой переменной предназначена только для текущей итерации цикла, поэтому вы можете повторно использовать ее на каждой итерации.
Комментарии:
1. Большое вам спасибо, я думал, что возникнет конфликт, если не изменить имя переменной для new textboxcolumn .
Ответ №2:
Извините, я забыл добавить значения к элементам массива.
Я получил ваш вопрос, теперь все, что вам нужно, это просто использовать такой массив:
Private Sub BtnAddNewColumns_Click(sender As Object, e As EventArgs) Handles BtnAddNewColumns.Click
Dim MyArr(29) As String
For i As Integer = 1 To 29 Step 1
MyArr(i) = "DGVCol" amp; i
Next
For i As Integer = 1 To 29 Step 1
Dim DGV2Max1 As New DataGridViewTextBoxColumn
DGV2Max1.DataPropertyName = MyArr(i)
DGV2Max1.HeaderText = MyArr(i)
DGV2Max1.Name = MyArr(i)
DataGridView2.Columns.Add(DGV2Max1)
Next
End Sub
Я надеюсь, что это хорошо сработает для тебя, братан,
^_ ^