你创建了一个ASP.net应用程序,该程序使用DataGrid控件显示已存储的产品列表信息。产品数据库存储在一个名为TestKingDB的SQL Server数据库中。每个产品使用名为ProductID的数值字段标识,每种产品都有一个名为ProductName的字符字段。你编写ADO.net代码,使用SqlDataAdapter对象和SqlCommand对象通过调用存储过程从数据库中获取数据。你设置SqlCommand对象的CommandType属性为CommandTyp.StoredProcedure,CommandText属性为procProductList。你的代码,使用以ProductID字段降序排列的产品列表数据,成功填充了一个DataTable对象。你想使用数据以ProductName字段按字母顺序重新显示,你应该怎么做?(B)
0 p4 k1 \ l# b* _7 ~7 X2 f A、更改SqlCommand对象的CommandType属性为CommandType.Text; $ `/ u" a! x+ Y
更改SqlCommand对象的CommandText属性为如下代码:
- E o4 J# Z6 ~5 o8 @/ t* F 绑定DataGrid控件到DataTable对象;
, J5 q* j% f) i9 c B、在DataTable对象的基础上创建一个DataView对象;
0 i8 I8 C! ^+ [% z0 Z+ h 设置DataView对象的Sort属性为:“ProductName DESC”; 9 c$ t$ x8 B$ b
绑定DataGrid控件到DataView对象;
( Z# ^5 Y/ t7 o* L, N5 n L 要重新排序,不改变原来的显示顺序;可以用Dataview对象,它只改变内存中的数据排序;不改变数据源;
/ B7 |# a: ?& R0 Z) N3 O1 E C、设置DataGrid控件的AllowSorting属性为True;
# d# h1 Y) Q) J! y$ y, N0 R 设置DataGridColumn的SortExpression使用“ProductName DESC”显示ProductName; , [$ P- ^5 t; C
绑定DataGrid控件到DataTable对象;
6 K8 |) y$ N5 s6 D" b D、设置DataTable对象的DisplayExpression属性为:
5 E- C7 I; R+ e4 { 绑定DataGrid控件到DataTable对象;
+ W9 X: r$ G* S6 y注:Sort属性:获取或设置 DataView 的一个或多个排序列以及排序顺序 6 _6 ^ ?& y7 I% `4 a
AllowSorting属性:获取或设置一个值,该值指示是否可以通过单击列标头对网格进行重新排序。 & i, X. \( ^$ D' C' D
DisplayExpression属性:获取或设置将返回一个值的表达式,该值用于表示用户界面中的该表 1 z5 _8 w3 ]4 N) J* P
本题的根源是数据源的排序方式,A,C,D三项都不能实现本题目标。 |