DispatcherTimer数组问题

时间:2011-02-10 20:53:48

标签: vb.net

目前,我有以下代码: Public tmr()As DispatcherTimer

Public Sub CreateTimer(ByVal timernumber As Integer)
    Dim main As New MainWindow

    Dim tmr(timernumber) As DispatcherTimer
    tmr(timernumber - 1).Stop()
    tmr(timernumber).Start()
    tmr(timernumber).Interval = New TimeSpan(0, 0, 0, 0, 50)

    AddHandler tmr(timernumber).Tick, AddressOf main.tmr_tick
End Sub


Public Sub CreateFirstTimer(ByVal timernumber As Integer)
    Dim main As New MainWindow

    Dim tmr(timernumber) As DispatcherTimer
    tmr(timernumber).Interval = New TimeSpan(0, 0, 0, 0, 50)
    tmr(timernumber).Start()
    AddHandler tmr(timernumber).Tick, AddressOf main.tmr_tick
End Sub

这是一个稍微面向对象的应用程序的一部分,两个子程序为这个类提供一个变量'timernumber'。这看起来应该可以工作,但是,当应用程序使用这些子例程时,它会崩溃,因为Dim tmr(timernumber)As DispatcherTimer中没有“new”语句(As New DispatcherTimer)。当我输入“New”时,VB抱怨无法将New关键字与数组一起使用。 所以,我想如何在WPF中动态创建dispatchertimers,所有这些都有效?也许在途中“删除”旧的? 谢谢大家!

1 个答案:

答案 0 :(得分:1)

tmr是否在其他地方宣布?如果是这样,你想使用:

tmr(timernumber) = New DispatcherTimer()