GridView AllowSorting Example

//后台代码:

 protected void CustomersGridView_RowCreated(Object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.Header)
        {
            int sortColumnIndex = GetSortColumnIndex();

            if (sortColumnIndex != -1)
            {
                AddSortImage(sortColumnIndex, e.Row);
            }
        }
    }

    int GetSortColumnIndex()
    {


        foreach (DataControlField field in CustomersGridView.Columns)
        {
            if (field.SortExpression == CustomersGridView.SortExpression)
            {
                return CustomersGridView.Columns.IndexOf(field);
            }
        }

        return -1;
    }


    void AddSortImage(int columnIndex, GridViewRow headerRow)
    {
        Image sortImage = new Image();
        if (CustomersGridView.SortDirection == SortDirection.Ascending)
        {
            sortImage.ImageUrl = "~/Images/03.jpg";
            sortImage.AlternateText = "Ascending Order";
        }
        else
        {
            sortImage.ImageUrl = "~/Images/05.jpg";
            sortImage.AlternateText = "Descending Order";
        }

        headerRow.Cells[columnIndex].Controls.Add(sortImage);

    }

//前台:

 

 <form id="Form1" runat="server">
       
      <h3>GridView AllowSorting Example</h3>

      <asp:gridview id="CustomersGridView"
        datasourceid="CustomersSource"
        autogeneratecolumns="False"
        emptydatatext="No data available."
        allowsorting="True"
        onrowcreated="CustomersGridView_RowCreated"
        runat="server">
          <Columns>
              <asp:BoundField DataField="GoodsID" HeaderText="商品ID" ReadOnly="True" SortExpression="GoodsID" />
              <asp:BoundField DataField="GoodsName" HeaderText="商品名称" SortExpression="GoodsName" />
              <asp:BoundField DataField="SellPrice" HeaderText="销售价格" SortExpression="SellPrice" />
          </Columns>
          <PagerTemplate>
              <asp:Image ID="Image1" runat="server" />
          </PagerTemplate>
               
      </asp:gridview>
           
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression_r to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSource"
        selectcommand="SELECT [GoodsID], [GoodsName], [SellPrice] FROM [tb_Goods]"
        connectionstring="<%$ ConnectionStrings:db_GoodsManageConnectionString %>"
        runat="server"/>
       
    </form>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值