多选
对于表达式可以有多种可能答案的选项If语句就变得难·以处理例如考虑Wrox United商店您可以购买一些名牌商品当前的商品是使用标准的邮政服务寄送的但是如果俱乐部想要提供不同的交付方式该怎么办或许可以使用一个下拉列表
Dim delivery() As String =(Next Day Post Day Post courierInternational)
DeliveryDropDownListDatasource=delivery
DeliveryDropDownListDatabind()
注意
第一行最后的下划线是一个换行符在它的前面必须添加一个空格告知Visual Basic这行代码并没有结束而是继续到下一行
该数据可能来自一个数组或者更可能来自一个数据库其中包括了交付类型和相关费用然而在计算出总价格后需要采取不同的行为通知包装部门使用哪种箱子或者直接联络递送公司的跟蹤系统使用If语句可以产生以下代码
Dim del As String = DeliveryDropDownListSelectedValue
If del=Next Day Post Then
pack in a normal box and stick lots of stamps on it
ElseIf del= Day Post Then
pack in a courier specific box and book a pickup
Else
pack in a large create and take to the freight company
End If
您可以看到所有那些ElseIf语句以及布局都使得该代码难以阅读在这种情况下最好使用Select语句可以将该代码转换为
Select Case deliveryDropDownListSelectedValue
Case Next Day Post
pack in a normal box and stick lots of stamps on it
Case Day Post Then
Pack in a normal box and stick one stamp on it
Case Courier Then
pack in a courier specific box and book a pickup
Case Else
pack in a large crete and take to the freight company
这个代码更整洁更加便于阅读而且更不可能出错它与前面示例的工作方式类似表达式位于第一行所选的值来自下拉列表然后将该值与每个Case语句中的值进行比较从上面开始向下比较第一次满足条件时会执行那个Case语句下的代码段并且忽略其他所有的Case语句如果没有匹配值则运行Case Else语句下的代码段
[] [] [] []