使用计时器在MultiView控件中的视图之间移动

时间:2017-01-30 17:05:02

标签: asp.net vb.net

我正在尝试让一个计时器在MultiView控件中的3个视图之间移动,这里是我正在使用的代码:

Protected Sub Timer1_Tick(sender As Object, e As EventArgs) Handles  Timer1.Tick
    Dim activeView As String
    activeView = MultiView1.GetActiveView().ID



    If activeView = "View1" Then
        MultiView1.SetActiveView(View2)
    End If

    If activeView = "View2" Then
        MultiView1.SetActiveView(View3)
    End If

    If activeView = "View3" Then
        MultiView1.SetActiveView(View1)
    End If


End Sub

在页面加载时,我将MultiView控件设置为View1(MultiView1.SetActiveView(View1)) 页面加载正确,数据(从SQL服务器中提取)是可见的。在timer1上第一次打勾后,第二个视图再次显示正确的数据。然后我没有看到浏览器上的重新加载按钮在定时器间隔但是我从未见过View3或返回View1

在任何人建议我构建If语句为If,ElseIf,EndIf但我将其分解为单独的If语句以查看是否有帮助。

没有。

我希望有人可以提供帮助

干杯

2 个答案:

答案 0 :(得分:0)

您是否尝试过休息时调试代码,尝试暂停If...End If块并查看是否可以访问。 您可能为视图设置了不同的ID,或者可能是某些cASE不匹配。我建议,而不是比较视图的ID字符串,可以安全地比较视图索引MultiView1.ActiveViewIndex,这将只返回一个更安全的比较整数。 希望它会奏效。

答案 1 :(得分:0)

有时候我想知道如果没有照顾者我是否应该被释放。

我发现为什么视图或label.text更改没有进展。我已经在page_load中设置了启动信息,所以即使计时器正在触发,它也会执行一个page_load,它会默认回原始数据。

抱歉浪费你的时间。

我慢慢地把头靠在墙上,直到它不再受伤,然后回到我的项目。