<asp:GridView ID="GridView1" runat="server" BackColor="White" 
            BorderColor="#999999" BorderStyle="None" BorderWidth="1px" CellPadding="3" 
            GridLines="Vertical" >
                    <AlternatingRowStyle BackColor="#DCDCDC" />
                    <Columns>
                       <asp:TemplateField>
                            <HeaderTemplate>
                                <asp:CheckBox ID="ckbAll" runat="server" 
                                    AutoPostBack="true" />
                            </HeaderTemplate>
                            <ItemTemplate>
                                <asp:CheckBox ID="ckbSingle" runat="server" 
                                    AutoPostBack="true" />
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:CommandField HeaderText="Edit" ShowEditButton="True" ShowHeader="True" />
                    </Columns>
                    <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
                    <HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
                    <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
                    <RowStyle BackColor="#EEEEEE" ForeColor="Black" />
                    <SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
                    <SortedAscendingCellStyle BackColor="#F1F1F1" />
                    <SortedAscendingHeaderStyle BackColor="#0000A9" />
                    <SortedDescendingCellStyle BackColor="#CAC9C9" />
                    <SortedDescendingHeaderStyle BackColor="#000065" />我在gridview里只加了2个checkbox,为什么浏览器中显示一片空白,现在不考虑数据绑定什么的,照理说不是应该能显示出控件吗?
求解!!!ASP.NETGridView

解决方案 »

  1.   

    请把 这些样式注释试试,如果是这里的问题,就一个一个的注释,以确定是那个样式的问题。
    <AlternatingRowStyle BackColor="#DCDCDC" />
    <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
                        <HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
                        <RowStyle BackColor="#EEEEEE" ForeColor="Black" />
                        <SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
                        <SortedAscendingCellStyle BackColor="#F1F1F1" />
                        <SortedAscendingHeaderStyle BackColor="#0000A9" />
                        <SortedDescendingCellStyle BackColor="#CAC9C9" />
                        <SortedDescendingHeaderStyle BackColor="#000065" />记得全部给分我。
      

  2.   

    或者
    <ItemTemplate>
                                    <asp:CheckBox ID="ckbSingle" runat="server" 
                                        AutoPostBack="true" />
    <%#Eval("字段名")%>
                                </ItemTemplate>
    加上一个<%#Eval("字段名")%>
    试试。
      

  3.   

    再第一个checkbox边上还写了全选。都没显示,最起码里面的控件不是要显示吗?
      

  4.   

    Refer:
    http://www.cnblogs.com/insus/archive/2013/04/24/3039115.html
    http://www.cnblogs.com/insus/articles/1406192.html
    http://www.cnblogs.com/insus/articles/2055745.html
      

  5.   

    1.显示不出来 多半是你里面弄了一堆样式的问题,或者其他后台的什么我这边看不出来
    2.想要实现全选 先加上触发事件:   <asp:CheckBox ID="ckbAll" runat="server"                                  oncheckedchanged="ckbAll_CheckedChanged" AutoPostBack="true" />
    后台:
     protected void ckbAll_CheckedChanged(object sender, EventArgs e)
        {
            for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
            {
                CheckBox cbox = (CheckBox)(GridView1.Rows[i].FindControl("ckbSingle"));
                if (((CheckBox)GridView1.HeaderRow.FindControl("ckbAll")).Checked == true)
                {
                    cbox.Checked = true;
                }
                else
                {
                    cbox.Checked = false;
                }
            }
        }