我在哪里可以触发更新文本框中的变量?

时间:2015-05-20 20:31:42

标签: vb.net

我的程序是一个15x15网格来安排棒球比赛。

 Public Class Form1
    Dim aHomeTotal As Integer = 0

TXTaHomeTotal是第一列下方的文本框,代表该列中播放的游戏数量。

例如,第1列第2行复选框已编码:

Private Sub AB_CheckedChanged(sender As Object, e As EventArgs) Handles AB.CheckedChanged
    If AB.Checked = True Then aHomeTotal = aHomeTotal + 1
    If AB.Checked = False Then aHomeTotal = aHomeTotal - 1

我无法确定在哪里声明TXTaHomeTotal.Text = aHomeTotal。我不允许在公共类下执行它,我不能在文本框的TextChanged事件处理程序下使用它,因为该框将是只读的。我在哪里可以触发这个和/或我可以使用哪个事件处理程序?

enter image description here

2 个答案:

答案 0 :(得分:1)

这就是我要做的事情:

1) Create a function TotalizeColumn(int ColNum)
2) Call that function every time a checkbox is clicked with the column index
3) In the function, itinerate between all the checkboxes on that column ans sumarize checked ones and totalize checks into a variable.
4) Set text for TXTaHomeTotal.Text with variable from point 3.

希望这有助于你

答案 1 :(得分:1)

ericpap的解决方案是一种很好的方式。

在更新大量元素时我喜欢做的是使用Timer,间隔为100毫秒。如果您在需要更新的表单中有不同的元素,这将特别有用。

像这样实施;

Public Sub UpdateTimer_Tick(Sender As Object, e As EventArgs) Handles UpdateTimer.Tick 
    TXTaHomeTotal.Text = aHomeTotal
    TXTaHomeTotal.Refresh 
    ...
End Sub