如何在编辑gridview时填充下拉列表... [英] how to populate dropdown while editing the gridview...
本文介绍了如何在编辑gridview时填充下拉列表...的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个gridview1,在编辑时应在其列中包含一个下拉菜单.您可以帮我吗... thnx ...
Hi,
I have a gridview1 which should contain a dropdown in its column while editing... can u plz help me out... thnx...
<asp:TemplateField HeaderText="Project">
<EditItemTemplate>
<asp:DropDownList ID="ddlProjects" runat="server" DataSourceID="DataSource1" DataTextField="" DataValueField="" ></asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblProjectName" runat="server" Text='<%# Eval("Project_Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
推荐答案
在itemDataBound Event
中,使用以下代码,
InitemDataBound Event
, use the below code,
if(e.Row.RowType == DataControlRowType.DataRow)
{
if(gridview1.EditIndex >= 0)
{
DropDownList ddl = (DropDownList)e.Row.FindControl("ddlProjects");
ddl.DataTextField = "Col1";
ddl.DataValueField = "COl2";
ddl.DataSource = objDatatable; //your datasource
ddl.DataBind();
}
}
希望对您有帮助,
hope it helps,
//您应该像这样尝试:
// U should try like this :
<asp:TemplateField HeaderText="Project">
<EditItemTemplate>
<asp:DropDownList ID="ddlProjects" runat="server" ></asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblProjectName" runat="server" Text='<%# Eval("Project_Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
// Write like that in .cs code
protected void gvCheck_RowEditing(object sender, GridViewEditEventArgs e)
{
gvCheck.EditIndex = e.NewEditIndex;
gvCheck.DataSource = ViewState["DataTable"] as DataTable;
gvCheck.DataBind();
DropDownList ddlTest = (DropDownList)gvCheck.Rows[e.NewEditIndex].FindControl("ddlTest");
ddlTest.DataSource = ViewState["ddlTable"] as DataTable;
ddlTest.DataTextField = "Name";
ddlTest.DataValueField = "Name";
ddlTest.DataBind();
ddlTest.Items.Insert(0, new ListItem("Select", "0"));
}
这篇关于如何在编辑gridview时填充下拉列表...的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文