asp.net Gridview复选框无需编辑即可点击

时间:2015-07-20 15:19:31

标签: asp.net vb.net gridview checkbox

我的griview上有一个复选框,在单击编辑按钮之前可以单击它,这对我来说没有意义,也不是我之前遇到过的。理论上,在用户单击编辑按钮之前,复选框应显示为灰色。

没有什么可以更新,但它没有任何意义,为什么这个功能可用。我在使用复选框之前设置了Gridviews,但从未遇到过这种情况。以下是我的代码:

<asp:GridView ID="gvLeagues" runat="server" 
            AutoGenerateColumns="False"  
            onpageindexchanging="gvLeagues_PageIndexChanging"  
            onrowcancelingedit="gvLeagues_RowCancelingEdit"  
            onrowdatabound="gvLeagues_RowDataBound"
            onrowediting="gvLeagues_RowEditing" 
            onrowupdating="gvLeagues_RowUpdating"  
            onsorting="gvLeagues_Sorting" EnableModelValidation="True"          
            CssClass="footable"
            EditRowStyle-CssClass="table table-bordered" > 

                         没有找到数据。
                               
                        

        <asp:TemplateField HeaderText="Name" SortExpression="Name">
            <EditItemTemplate>
                <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Name")%>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate><asp:Label ID="Label1" runat="server" Text='<%# Bind("Name")%>'></asp:Label></ItemTemplate>
        </asp:TemplateField>            

        <asp:TemplateField HeaderText="Created Date" SortExpression="CreatedDate">
            <EditItemTemplate>
                <asp:TextBox ID="TextBox2" runat="server" ReadOnly="true" Text='<%# Bind("CreatedDate")%>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate><asp:Label ID="Label2" runat="server" Text='<%# Bind("CreatedDate")%>'></asp:Label></ItemTemplate>
        </asp:TemplateField>            

        <asp:TemplateField HeaderText="Day" SortExpression="Day">
            <EditItemTemplate>
                <asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("Day")%>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate><asp:Label ID="Label3" runat="server" Text='<%# Bind("Day")%>'></asp:Label></ItemTemplate>
        </asp:TemplateField>

        <asp:TemplateField HeaderText="Season" SortExpression="Season">
            <EditItemTemplate>
                <asp:TextBox ID="TextBox4" runat="server" Text='<%# Bind("Season")%>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate><asp:Label ID="Label4" runat="server" Text='<%# Bind("Season")%>'></asp:Label></ItemTemplate>
        </asp:TemplateField>

        <asp:TemplateField HeaderText="Enabled" SortExpression="Enabled">
            <EditItemTemplate>
                <asp:CheckBox ID="chkEnabled" runat="server" Checked='<%# Eval("Enabled")%>' />
            </EditItemTemplate>
            <ItemTemplate><asp:CheckBox ID="chkEnabled" runat="server" Checked='<%# Eval("Enabled")%>' /></ItemTemplate>
        </asp:TemplateField>

    </Columns>
    </asp:GridView>

1 个答案:

答案 0 :(得分:0)

使用ItemTemplate时,您可以指定要查看的内容和方式。只需将该复选框设置为disabled即可。

    <asp:TemplateField HeaderText="Enabled" SortExpression="Enabled">
        <EditItemTemplate>
            <asp:CheckBox ID="chkEnabled" runat="server" Checked='<%# Eval("Enabled")%>' />
        </EditItemTemplate>
        <ItemTemplate><asp:CheckBox ID="chkEnabled" runat="server" Checked='<%# Eval("Enabled")%>'  enabled="False"/></ItemTemplate>
    </asp:TemplateField>