对DataGrid中的行进行排序和筛选
当需要显示许多数据行时,对用户来说,能够根据特定栏对行进行排序,并且根据特定值对行进行筛选是非常有帮助的。因此我们在网站设计时应加入这样的技术,这两项技术将使它们非常容易地找到它们要搜索的行。尽管这意味着到使用当前生成的控件的服务器的更多往返,但它不失为添加到应用程序的一项有用的功能。我们可以在使用DataGrid控件时方便地提供这两项功能。DataGrid能够完成提供按栏排序的功能所要求的大部分工作。如果控件的数据源时DataView对象,那么我们利用它包含的排序和筛选功能。
要对DataView中的行进行排序,我们只需要将Sort属性设置为一个包含栏名的字符串,也可以设置为可选的关键字DESC表示以降序排序。还可以根据多栏进行排序,方法是用逗号将栏名隔开。对DataView中的行进行筛选,可以将RowFilter属性设置为一个指定要显示的行的表达式,例如Title LIKE ASP。
使用DataGrid控件的一大优点是它有一个名为AllowSorting的属性,而且它显示一个名为SortCommand的事件。当我们将AllowSorting属性设置为True时(通常在控件的定义内完成),各栏标题将自动变为超级链接。单击超级链接时,发生一个传送回的动作,为SortCommand属性指定的事件处理程序被执行。