jackyrong

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

虽然是BETA 1的,但原理其实和。NET 1。1的差不多,下面的例子讲了如何在排序时,在
headertemplate中加一张UP.GIF和DOWN.GIF(就是升序,倒序的示意图)
%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml" >

 

<script runat="server">

   

    void GridView1_RowCreated(object sender, GridViewRowEventArgs e)

    {

        if (e.Row != null && e.Row.RowType == DataControlRowType.Header)

        {

            foreach (TableCell cell in e.Row.Cells)

            {

                if (cell.HasControls())

                {

                    LinkButton button = cell.Controls[0] as LinkButton;

 

                    if (button != null)

                    {

                        Image image = new Image();

                        image.ImageUrl = "default.gif";

 

                        if (GridView1.SortExpression == button.CommandArgument)

                        {

                            if (GridView1.SortDirection == SortDirection.Ascending)

                                image.ImageUrl = "up.gif";

                            else

                                image.ImageUrl = "down..gif";

                        }

 

                        cell.Controls.Add(image);

                    }

                }

            }

        }

    }

       

</script>

 

<head id="Head1" runat="server">

    <title>Untitled Page</title>

</head>

<body>

    <form id="form1" runat="server">

    <div>

        <asp:GridView ID="GridView1" Runat="server" DataSourceID="SqlDataSource1" AllowSorting="True" AutoGenerateColumns="False" OnRowCreated="GridView1_RowCreated">

            <Columns>

                <asp:BoundField HeaderText="customerid" DataField="CustomerID"></asp:BoundField>

                <asp:BoundField HeaderText="companyname" DataField="CompanyName" SortExpression="CompanyName"></asp:BoundField>

              

            </Columns>

        </asp:GridView>

        <asp:SqlDataSource ID="SqlDataSource1" Runat="server" SelectCommand="SELECT customerid,companyname FROM customers " ConnectionString="server=localhost;uid=sa;password=XXX;database=northwind">

        </asp:SqlDataSource>

    </div>

    </form>

</body>

</html>

posted on 2005-01-15 20:15  jackyrong的世界  阅读(1747)  评论(1编辑  收藏  举报