У меня есть немного кода в моем проекте, который считывает данные из базы данных и присваивает их тексту на кнопках. В программе есть 25 кнопок в виде сетки. Нынешнее решение является грязным и имеет проблемы с пустыми данными.присвоение значений нескольким объектам в цикле for
Это текущее решение:
rs.Read()
Productbutton1.Text = (rs(0))
rs.Read()
Productbutton2.Text = (rs(0))
rs.Read()
Productbutton3.Text = (rs(0))
rs.Read()
Productbutton4.Text = (rs(0))
rs.Read()
Productbutton5.Text = (rs(0))
rs.Read()
Productbutton6.Text = (rs(0))
rs.Read()
Productbutton7.Text = (rs(0))
rs.Read()
Productbutton8.Text = (rs(0))
rs.Read()
Productbutton9.Text = (rs(0))
rs.Read()
Productbutton10.Text = (rs(0))
rs.Read()
Productbutton11.Text = (rs(0))
rs.Read()
Productbutton12.Text = (rs(0))
rs.Read()
Productbutton13.Text = (rs(0))
rs.Read()
Productbutton14.Text = (rs(0))
rs.Read()
Productbutton15.Text = (rs(0))
rs.Read()
Productbutton16.Text = (rs(0))
rs.Read()
Productbutton17.Text = (rs(0))
rs.Read()
Productbutton18.Text = (rs(0))
rs.Read()
Productbutton19.Text = (rs(0))
rs.Read()
Productbutton20.Text = (rs(0))
rs.Read()
Productbutton21.Text = (rs(0))
rs.Read()
Productbutton22.Text = (rs(0))
rs.Read()
Productbutton23.Text = (rs(0))
rs.Read()
Productbutton24.Text = (rs(0))
rs.Read()
Productbutton25.Text = (rs(0))
Проблема я столкнулся в том, что я не могу использовать для цикла в смысле:
For i = 1 To 25
rs.Read()
Productbutton(i).text = (rs(0))
Next
Поскольку Visual Basic не позволит мне замените часть имени кнопки для переменной. Мне сказали, что цикл while может быть реализован так: (while rs.Read = true
). Однако я не знаю, как продвигаться по всем именам кнопок в цикле while.
Я скорректированного теги на вопрос, поэтому я также удалил комментарий о них из вашего ответа. – RubberDuck
Есть другие способы сделать это. Например, если эти элементы управления были в своей собственной панели e.a, вы могли бы просто сделать foreach на MyPanel.Controls. –