【问题标题】:Dynamic sorting for gridview populated from EF at runtime在运行时从 EF 填充的 gridview 的动态排序
【发布时间】:2018-03-22 21:07:51
【问题描述】:

我有一个在运行时填充的网格视图:

<asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" 
        GridLines="None" OnSorting="GridView1_Sorting" OnSorted="GridView1_Sorted"
        OnPageIndexChanging="GridView1_PageIndexChanging">
        <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
        <EditRowStyle BackColor="#999999" />
        <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
        <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
        <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
        <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
        <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
        <SortedAscendingCellStyle BackColor="#E9E7E2" />
        <SortedAscendingHeaderStyle BackColor="#506C8C" />
        <SortedDescendingCellStyle BackColor="#FFFDF8" />
        <SortedDescendingHeaderStyle BackColor="#6F8DAE" />
        <Columns>
        </Columns>
    </asp:GridView>

protected void Page_Load(object sender, EventArgs e)
    {
        LoadData();
    }

private void LoadData()
    {
        TSCDB = new TSCDB();

        GridView1.DataSource = TSCDB.TsCiTAllOrders
            .Where(x => x.DeletedDate == null && x.StatusName != "Cancelled")
            .AsEnumerable()
            .ToList();

        GridView1.AllowPaging = true;
        GridView1.PageSize = 10;
        GridView1.AllowSorting = true;
        GridView1.DataBind();
    }

我正在尝试在网格上启用排序,但是当我单击列标题时此代码不起作用:

protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
    {
        var sortExpression = e.SortExpression;
        var sortDirection = e.SortDirection;

        GridView1.DataBind();
        GridView1.Sort(sortExpression, sortDirection);
    }

这显然只是在 Sort & DataBind 语句之间循环,但令人惊讶的是,我似乎无法在 Google 机器上找到明确的指令。

【问题讨论】:

  • 您能否将 AllowSorting="true" 添加到 ASPX 而不是 Page_Load 事件?例如。 &lt;asp:GridView AllowSorting="true"
  • 可以,方法有区别吗?我问是因为我不知道。我正在学习asp。

标签: c# asp.net .net webforms


【解决方案1】:

使用此链接:

https://www.c-sharpcorner.com/UploadFile/009464/gridview-sorting-example-in-Asp-Net-using-C-Sharp/

我希望它能帮助你解决你的问题。

【讨论】:

  • 做到了。非常感谢您的帮助。
  • 如果您的问题已解决,请标记为解决方案或支持
猜你喜欢
  • 2021-08-31
  • 2013-08-16
  • 2020-09-10
  • 1970-01-01
  • 2018-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多