如何来改变显示的页
我们设置了影响DataGrid控件外观的所有属性,并可以绑定和显示数据的内容。剩下的就是处理发生在用户单击某页导航链接时的PageIndexChanged事件。我们在DataGrid控件的原始定义中指定了名为ChangedGridPage的事件处理程序。那么,我们要做的工作是:收集用户从DataGridPagechangedEventArgs对象(它在事件发生时被传递到事件处理程序)的NewPageIndex属性选择的索引页数。我们将该值分配给DataGrid的CurrentPageIndex属性,然后调用BindDataGrid例程来读取、绑定和显示适当的数据行的页。
将分页设计到显示数据行的应用程序中向来是一项易于产生错误的任务,我们可以看到这一点对于DataGrid来说变得多么容易。我们还可以指定自定义分页控件——为控件创建按钮、超级链接和图像等。这需要将AllowCustomPaging属性以及AllowPaging属性设置为True。这样分页控件将不出现,但我们仍可以响应PageIndexChanged事件来显示适当的行集合自定义的分页控件。
如果我们希望使用DataReader作为控件的数据源,这时自定义分页也非常有用。当使用DataGrid的内置分页功能时,我们不能利用DataReader作为数据源——而必须是其他一种数据源类型,如DataView、DataSet、ArrayList或HashTable。不过,如果我们执行的是自定义分页,则可以使用DataReader。