WEB技术DataGrid应用之排序

网格中对列进行排序 
<%@ Import Namespace="System.Data" %>

<html>
 
<script language="C#" runat="server">

    string SortField;

    ICollection CreateDataSource() {
        DataTable dt = new DataTable();
        DataRow dr;

        dt.Columns.Add(new DataColumn("整数值", typeof(Int32)));
        dt.Columns.Add(new DataColumn("字符串值", typeof(string)));
        dt.Columns.Add(new DataColumn("日期时间值", typeof(DateTime)));
        dt.Columns.Add(new DataColumn("布尔值", typeof(bool)));
        dt.Columns.Add(new DataColumn("货币值", typeof(double)));

        for (int i = 0; i < 9; i++) {
            dr = dt.NewRow();

            dr[0] = 9-i;
            dr[1] = "项 " + i.ToString();
            dr[2] = DateTime.Now;
            dr[3] = (i % 2 != 0) ? true : false;
            dr[4] = 1.23 * (i+1);

            dt.Rows.Add(dr);
        }

        DataView dv = new DataView(dt);
        dv.Sort = SortField;
        return dv;
    }

    void Page_Load(Object sender, EventArgs e) {
        if (!IsPostBack) {
            if (SortField == "") {
                SortField = "IntegerValue";
            }    
            BindGrid();
        }    
    }

    void MyDataGrid_Sort(Object sender, DataGridSortCommandEventArgs e) {
        SortField = (string)e.SortExpression;
        BindGrid();
    }

    void BindGrid() {
        MyDataGrid.DataSource = CreateDataSource();
        MyDataGrid.DataBind();
    }


</script>

<body>

    <h3><font face="宋体">DataGrid 中的基本排序</font></h3>

    <form runat=server>

      <ASP:DataGrid id="MyDataGrid" runat="server"
        AllowSorting="true"//关键:“true”
        OnSortCommand="MyDataGrid_Sort"
        BorderColor="black"
        BorderWidth="1"
        CellPadding="3"
        Font-Name="宋体"
        Font-Size="8pt"
        HeaderStyle-BackColor="#ccccff"
        HeaderStyle-ForeColor="black"
      />

  </form>

</body>
</html>
按下列“字符串值”
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值