GridView - 使用后面的代码复选框(在按钮点击时)将多行“输入”到编辑模式

时间:2011-12-10 15:31:09

标签: c# asp.net .net gridview

我需要一些帮助。

我在第一列中有GridView CheckBox个es。如果用户检查多个CheckBox es并单击一个按钮,我需要在编辑模式下显示所选行。我怎么做?有小费吗?

一些示例代码,我的想象。

这是我的Gridview MyGV:

<asp:GridView ID="MyGV" runat="server" AutoGenerateColumns="False" DataKeyNames="ID">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:CheckBox ID="ChkBox" runat="server" />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField DataField="ID" HeaderText="ID" />
        <asp:TemplateField HeaderText="Column1">
            <EditItemTemplate>
                <asp:TextBox ID="tbColumn1" runat="server" Text='<%# Bind("column1") %>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate>
                <asp:Label ID="labColumn1" runat="server" Text='<%# Bind("column1") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Column2">
            <EditItemTemplate>
                <asp:TextBox ID="tbColumn2" runat="server" Text='<%# Bind("column2") %>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate>
                <asp:Label ID="labColumn2" runat="server" Text='<%# Bind("column2") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
   </Columns>
</asp:GridView>
<asp:Button ID="btnEdit" runat="server" Text="EDIT" OnClick="btnEdit_Click" />

在后面的代码中,我绑定GridView来显示SQL表中的数据(没问题)。现在,当我单击EDIT按钮时,我需要它将所选行输入编辑模式(仅选择行)。

protected void btnEdit_Click(object sender, EventArgs e)
{
    foreach (GridViewRow row in MyGV.Rows)
    {
        CheckBox checkbox = (CheckBox)row.FindControl("ChkBox");
        if (checkbox.Checked)
        {
            // ENTER EDIT MODE - Help needed here!! :)
        }
    }
    BindGridView();
}

1 个答案:

答案 0 :(得分:1)

在GridView中,只有一行可以同时处于真正的编辑模式。请参阅下面的问题以获取可能的解决方法:

Put multiple rows of a gridview into edit mode