繁体   English   中英

将下拉列表添加到gridview中的列

[英]Adding dropdown list to columns in gridview

我有一个网格,我想为某些列设置一个是和否的下拉列表。 我无法像下面提到的那样放置该下拉列表。 这是因为我使用网格中的复选框来编辑行。 因此,即使我输入了这些内容,也无法在单击复选框进行编辑时看到下拉菜单。

<asp:TemplateField HeaderText="Lead" ItemStyle-Width="100">
    <ItemTemplate>
        <asp:Label ID="lblLead" runat="server" Text='<%# Bind("Lead") %>'></asp:Label>
        <asp:TextBox ID="txtLead" runat="server" Text='<%# Bind("Lead") %>' Visible="false"></asp:TextBox>
    </ItemTemplate>
    <ItemStyle Width="100px" />
    <EditItemTemplate>
        <asp:DropDownList id="ddlLead" runat="server">
            <asp:ListItem Value="Yes"> Yes </asp:ListItem>
            <asp:ListItem Value="No"> No </asp:ListItem> 
        </asp:DropDownList>
    </EditItemTemplate>
</asp:TemplateField>

尝试这个

protected void grdVw_RowEditing(object sender, GridViewEditEventArgs e)
        {
          grdVw.EditIndex = e.NewEditIndex;

            /* Insert specific editing logic here */

            grdBind();//method to bind gridview
        }

首先,您必须确保将模式设置为“编辑”。 为此,我使用默认按钮,而您使用的是复选框,它们都应该起作用:

<asp:GridView ID="GridView1" runat="server" OnRowEditing="GridView1_RowEditing">
    <Columns>
        <asp:CommandField ShowEditButton="True" />
        <%--Other columns here--%>
    </Columns>
</asp:GridView>

然后,您需要通过将EditIndex设置为要编辑的行的索引来处理RowEditing事件,然后重新绑定GridView:

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
    GridView1.EditIndex = e.NewEditIndex;
    setDataSource(); //this sets the data source of the grid, and re-binds it.
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM