gpt4 book ai didi

c# - 在 c#.net 中对绑定(bind)到数据表的 gridview 进行排序

转载 作者:行者123 更新时间:2023-11-30 17:21:02 26 4
gpt4 key购买 nike

我有一个绑定(bind)到 DataTable 的 gridview。当我尝试对 gridview 进行排序时,它变为空白。我怎样才能对这个 gridview 进行排序?

我知道以前有人问过这个问题,但我要找的是如何做的解释。也许用一个简单的例子。

我读到我需要在 on_sorting 和/或 on_sorted 事件中放置一些代码,但我不明白那里需要什么。

同样,我想了解完成此操作的方法,我不只是想要一个巨大的代码块。


好的,这是我现在拥有的,但仍然无法正常工作:

            <asp:GridView ID="gridResults" runat="server" CellPadding="4" ForeColor="#333333"
GridLines="Horizontal" AllowSorting="True" AllowPaging="True"
EmptyDataText="No Tracking Information Found for the given criteria."
PageSize="15" onsorted="gridResults_Sorted" AutoGenerateColumns="False"
EnableSortingAndPagingCallbacks="True">
<RowStyle BackColor="#E3EAEB" />
<FooterStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#7C6F57" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>

然后在后面的代码中:

  //From search method
gridResults.Columns.Clear();
foreach (DataColumn col in currentResults.Columns)
{
String fieldName = col.ColumnName;
BoundField field = new BoundField();
field.DataField = fieldName;
field.SortExpression = fieldName;
field.HeaderText = fieldName;

gridResults.Columns.Add(field);
}

gridResults.DataSource = currentResults;
gridResults.DataBind();
gridResults.AllowSorting = true;

任何人都可以看到我还缺少什么吗?结果显示,但没有排序或分页。

最佳答案

您可以使用 DataTable 使 GridView 可排序。您需要做的就是确保您有 Enable Sorting = true 并提供您希望在 SortExpression 中排序的列名。

要使其可排序,您需要执行以下操作:

<asp:BoundField HeaderText="Product" 
DataField="ProductName" SortExpression="ProductName">
</asp:BoundField>

您始终需要设置 SortExpression,否则您将无法对列进行排序

关于c# - 在 c#.net 中对绑定(bind)到数据表的 gridview 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3814315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com