如何动态标签号

时间:2017-06-29 00:05:21

标签: vb.net oledbcommand

这是一个网球锦标赛模拟程序我试图做一棵树。一切都很完美,但我有一个大问题。我无法与第一场比赛的获胜者一起进入下一阶段。因为我无法改变"目标"标签我想写的获奖者名字。这是一张照片:enter image description here

这就是我如何创造即将进入下一阶段并且实际上有效的获胜者.~

Public Sub Gerar_Vencedor(Atleta1, Atleta2)
    Using con As New OleDb.OleDbConnection
        con.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;" &
                               "Data Source = E:\dev\Ganso\BaseDados_ClubeTenis.accdb"
        con.Close()
        con.Open()
        Dim busca = "Select Vencedor From Jogo Where idAtleta1 = '" & Atleta1 & "' and idAtleta2 = '" & Atleta2 & "'"
        Dim cmd As OleDbCommand = New OleDbCommand(busca, con)
        Dim dr As OleDbDataReader = cmd.ExecuteReader()
        ' A variável sql vai receber a string para fazer o select a base de dados
        'Try
        ' é aberta ligação a Bdados
        ' declaração de um comando que vai executar a instrução sql na base de dados
        ' variável que vai receber os registos resultantes da instrução sql
        ' ciclo que vai percorrer todos os registos do comando anterior
        While dr.Read()
            Label9.Text = dr("Vencedor")
        End While
        con.Close()
    End Using
End Sub

我的问题是Label9.Text = dr("Vencedor"),因为每次获得胜利者都会转到label9。 我的最后一个问题是:无论如何都要动态更改标签,而不是一遍又一遍地重复这个功能。

感谢。

1 个答案:

答案 0 :(得分:1)

你能试试吗

Dim i As Integer = 9
While dr.Read()

If i < 15

DirectCast(Me.Controls("Label" & i), Label).Text = dr("Vencedor")

Else

End If

i = i + 1

End While