()最后在Source View中删除代码页面内一些不再需要的代码删除下面的阴影代码
Protected ListOfMonths() As Integer=()
Protected Sub Page_Load(ByVal sender As Object ByVal e As SystemEventArgs) Handles MeLoad
ListboxDataBind()
End Sub
()运行页面现在ListBox控件只显示有比赛的月份没有显示出来如果Wrox United的赛程在其他月份增加了比赛月份列表将会自动发生变化
操作回顾
使用VWD的拖放功能添加ListBox控件是非常简单的个整数数组并用预计有用的数值填充它然后在ListBox的属DataSource)应该来自于对数组ListOfMonths读取的结果在硬编码技术中您创建了一性中指定列表的数据项(它的最后在后台代码中在Page_Load事件内添加一条代码指示ASPNET 页面将数组中的数据实际绑定到数据绑定控件
这种技术存在两个问题首先它使用ASPNET 的绑定技术即显式命令绑定虽然这种技术也能工作(同时也是使用硬编码数组的惟一技术)但它没有充分利用ASPNET 的自动绑定功能其次如果Wrox United改变了它参加比赛的月份那么列表框中的选项将无法实现同步
在第二种技术中您创建了一个新的数据源控件该控件从当前比赛列表中读取实际的月份然而这些月份保存在完整的日期格式(例如//)中因此使用一个成为MONTH的SQL函数从日期中提取出月份又因为在一个月中会有多场比赛所以添加DISTINCT关键字使得每个值只出现一次(这些SQL技术在Wrox出版社的Beginning SQL一书中讨论)现在不再需要创建数组并对其进行填充的代码了同时还可以删除执行绑定的代码(在使用ASPNET 数据源控件的时候ASPNET 将为您完成这项工作)
注意ListBox控件的两个属性之间存在着微妙的但是非常重要的差别DataSource用于通过显式命令绑定到ASPNET 数据源的数据DataSourceID用于在ASPNET 中自动绑定到数据源控件
ASPNET 入门教程完整版
[] [] [] []