小弟初学asp.net,作毕设要急用,所用工具为web developer 2005。做一商品界面,要求在页脚显示“当前页面的商品总数为:“并进行统计;此外要求当pro_num=0时,页面显示此行为黄色;现附上完整代码,请大哥们帮忙填写,小弟不胜感激,并承诺80分!。另外,请问gridview控件中的itemdatabound事件如何定义?
<%@ Page Language="C#" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><script runat="server">    protected void Page_Load(object sender, EventArgs e)
    {    }    protected void Button1_Click(object sender, EventArgs e)
    {    }    protected void Button1_Click1(object sender, EventArgs e)
    {
        
    }
</script><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;
    </div>
        &nbsp;&nbsp;&nbsp;<asp:DropDownList ID="DropDownList1" runat="server">
            <asp:ListItem Value="pro_name">按商品名</asp:ListItem>
            <asp:ListItem Value="pro_typ">按商品类别</asp:ListItem>
        </asp:DropDownList>
        &nbsp;&nbsp;
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click1" Text="查询" /><br />
        &nbsp;
        <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
            AutoGenerateColumns="False" BackColor="White" BorderColor="#3366CC" BorderStyle="None"
            BorderWidth="1px" CellPadding="4" DataKeyNames="pro_id" DataSourceID="SqlDataSource1">
            <FooterStyle BackColor="#99CCCC" ForeColor="#003399" />
            <Columns>
                <asp:BoundField DataField="pro_id" HeaderText="pro_id" InsertVisible="False" ReadOnly="True"
                    SortExpression="pro_id" />
                <asp:BoundField DataField="typ_id" HeaderText="typ_id" SortExpression="typ_id" />
                <asp:BoundField DataField="pro_name" HeaderText="pro_name" SortExpression="pro_name" />
                <asp:BoundField DataField="pro_brand" HeaderText="pro_brand" SortExpression="pro_brand" />
                <asp:BoundField DataField="pro_model" HeaderText="pro_model" SortExpression="pro_model" />
                <asp:BoundField DataField="pro_price" HeaderText="pro_price" SortExpression="pro_price" />
                <asp:BoundField DataField="pro_num" HeaderText="pro_num" SortExpression="pro_num" />
                <asp:BoundField DataField="pro_reg" HeaderText="pro_reg" SortExpression="pro_reg" />
                <asp:BoundField DataField="pro_pic" HeaderText="pro_pic" SortExpression="pro_pic" />
                <asp:BoundField DataField="pro_ifo" HeaderText="pro_ifo" SortExpression="pro_ifo" />
            </Columns>
            <RowStyle BackColor="White" ForeColor="#003399" />
            <SelectedRowStyle BackColor="#009999" Font-Bold="True" ForeColor="#CCFF99" />
            <PagerStyle BackColor="#99CCCC" ForeColor="#003399" HorizontalAlign="Left" />
            <HeaderStyle BackColor="#003399" Font-Bold="True" ForeColor="#CCCCFF" />
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:GoodsConnectionString %>"
            SelectCommand="SELECT * FROM [products]"></asp:SqlDataSource>
    </form>
</body>
</html>

解决方案 »

  1.   

    天啊,工作了几年的程序员也没有几个能写出得错控件的事件
    各位你们有几个能写得出这个事件的呢?
    private void Page_Load(object sender, System.EventArgs e)
    {
    }
      

  2.   

    对于当pro_num=0时,页面显示此行为黄色,你可以响应GridView的RowDataBind事件,它有个参数e,e.DataItem即为当前行绑定的数据源中的“行”,但是需要做一下类型转换,如果你的数据源是DataTable或者DataSet,则e.DataItem的类型为DataRowView,你可以据此判断数据源中的数据是否满足变色条件,如果满足,可以利用e.Row的属性,来改变显示的表格的行的颜色等信息。对于合计,你可以利用DataTable的Compute方法来计算某烈的和,或者同样在RowDataBind事件响应函数中自己累加