下面是引用对的人于2008-10-01 00:11发表的 关于ActiveViewIndex:
if 的时候 是要显示 view1控制项里面的东西吗? 那SearchType.Products 是什么意思?
你问的 SearchType 就是列举,引用一下你贴的程式码,其中 SearchType 的列举的定义如下:
Protected Enum SearchType As Integer
NotSet = -1
Products = 0
Category = 1
End Enum
再看下面这一段
Protected Sub radioButton_CheckedChanged(ByVal sender As _
Object, ByVal e As System.EventArgs)
If radioProduct.Checked Then
MultiView1.ActiveViewIndex = SearchType.Products
ElseIf radioCategory.Checked Then
MultiView1.ActiveViewIndex = SearchType.Category
End If
End Sub
MultiView1.ActiveViewIndex 的起始值是从 0 开始,0 代码第一页,1 代表第二页。
如果给 -1 则 MultiView1 不会显示任何东西。
所以,程式码的意思是说,有两个 RadioButton ,一个 Name=radioProduct,一个 Name=radioCategory,
两个 RadioButton 共用一个事件处理函式 radioButton_CheckedChanged 。
如果 radioProduct.Checked = True 的话,就显示 MultiView1 的第一页,
如果 radioCategory.Checked = True 的话,就显示 MultiView1 的第二页。
如果不用列举的话,可以改成下面这样子
Protected Sub radioButton_CheckedChanged(ByVal sender As _
Object, ByVal e As System.EventArgs)
If radioProduct.Checked Then
MultiView1.ActiveViewIndex = 0
ElseIf radioCategory.Checked Then
MultiView1.ActiveViewIndex = 1
End If
End Sub
不过呢.....不是这样写不好,而是可读性不高....因为 0 代表什么?1 又代表什么?
所以为了提高可读性,就用列举来表示 0 是指显示产品,1 是显示分类。