我正在攻读m$证书。我使用"自定进度"的训练包(书)。我碰到了一件使我有点困惑的事。在网上发现一些代码样本也在做同样的事情后,我决定询问社区。
这是文本:
DetailsView控件不直接支持排序,而GridView控件做但是,您可以使用DataSource控件来管理数据,如第1课中所述排序。
这是书中示例代码的一个片段:
<asp:DetailsView runat="server" Width="300px"
ID="DetailsView1"
AllowPaging="True"
AutoGenerateRows="False"
DataKeyNames="ProductID"
DataSourceID="SqlDataSource1">
<Fields>
<asp:BoundField DataField="ProductID" HeaderText="ProductID"
InsertVisible="False" ReadOnly="True" SortExpression="ProductID" />
<asp:BoundField DataField="ProductName" HeaderText="ProductName"
SortExpression="ProductName" />
...
...
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True"
ShowInsertButton="True" />
</Fields>
</asp:DetailsView>
问题是:这个SortExpression在这里有意义吗?
GridView和DetailsView使用BoundField、CommandField等,因此这对GridView很有用,但对DetailsView不有用。DetailsView在形式上是单数,因为它一次只显示一条记录,所以排序对公开没有好处。
HTH。