使用生成的数据阅读器对Gridview进行排序和分页
本文关键字:Gridview 排序 分页 数据 | 更新日期: 2023-09-27 18:07:18
我一直在寻找一些关于如何使用自定义生成的数据阅读器对gridview进行排序的示例。
我是这样绑定gridview和datareader的
sqlConn.Open();
SqlDataReader reader = cmd.ExecuteReader();
gridBookings.DataSource = reader;
gridBookings.DataBind();
sqlConn.Close();
这是gridview的排序事件处理程序
protected void gridBookings_Sorted(object sender, EventArgs e)
{
gridBookings.DataBind();
}
这是gridview标记。
<asp:GridView ID="gridBookings" runat="server" CssClass="zebra-striped"
EmptyDataText="No data available, sir" ShowHeaderWhenEmpty="True"
ClientIDMode="Static" AutoGenerateColumns="False" AllowSorting="True"
onsorted="gridBookings_Sorted">
<columns>
<asp:BoundField HeaderText="BookingID" DataField="booking_id" SortExpression="booking_id"/><asp:BoundField HeaderText="CustomerID" DataField="cus_id" SortExpression="cus_id" />
<!--More bound fields-->
</columns>
</asp:GridView>
这是当我点击标题列中的链接按钮时得到的错误。
GridView ' gridbooking '触发了未处理的事件排序。
任何想法?
p。在侧面的问题,我怎么能显示空白的网格视图与空行时,任何数据没有绑定到它?
您正在订阅"Sorted"事件…但您还需要订阅"排序"事件。你真的应该升级到新版本的ASP。净:)
Gridview的排序事件发生在单击排序列的超链接时,但是在Gridview控件处理排序操作之前。Sorted事件发生在单击排序列的超链接时,但是之后的 GridView控件处理排序操作。通常我们使用gridview排序事件来对gridview中的项进行排序。点击此链接查看gridview
<asp:GridView ID="gridBookings" runat="server" CssClass="zebra-striped"
EmptyDataText="No data available, sir" ShowHeaderWhenEmpty="True"
ClientIDMode="Static" AutoGenerateColumns="False" AllowSorting="True"
onsorted="gridBookings_Sorted"
onsorting="gridBookings_Sorting">
protected void gridBookings_Sorting(object sender, GridViewSortEventArgs e)
{
//handled onsorting
}