单击按钮时增加标签值

时间:2013-02-22 21:20:53

标签: vb.net

我尝试使用CInt,TryParse,Convert.Int32等进行转换,但没有任何效果。我只需要在点击按钮btnVote时显示候选人的总票数,并在点击btnResult时显示结果。我也尝试在网上搜索,但仍然没有运气,所以我来到这个网站,希望我能用VB.net中的程序解决我的问题

以下是我的代码:

Public Class Presidential_Election

    Private Sub btnVote_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVote.Click
        If cboCandidates.Text = "NOLI" Then
            lblNoli.Text = Integer.Parse(lblNoli.Text) + 1
        ElseIf cboCandidates.Text = "VAL" Then
            lblVal.Text = (CInt(lblVal.Text) + 1).ToString
        ElseIf cboCandidates.Text = "LESTER" Then
            lblLester.Text = CInt(lblLester.Text) + 1
        ElseIf cboCandidates.Text = "GWAPO" Then
            lblGwapo.Text = CInt(lblGwapo.Text) + 1
        End If
    End Sub

    Private Sub btnResult_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnResult.Click
        lblNoli.Visible = True
        lblVal.Visible = True
        lblLester.Visible = True
        lblGwapo.Visible = True
    End Sub
End Class

2 个答案:

答案 0 :(得分:1)

我会为每个候选人设置一个整数计数器。将它们设置为0,然后在收到投票时递增它们。显示结果时,只需将标签文本绑定到各自的计数器并使其可见。这样,您就不必继续引用label.text。

答案 1 :(得分:0)

如果您尚未在开头将标签文本设置为0,则使用CInt肯定会引发错误。您有两种选择:

  • 将所有标签文字设置为0并继续使用CInt
  • 使用Val()

示例:

lblGwapo.Text = Val(lblGwapo.Text) + 1