Gridview标签动态 [英] Gridview Label Dynamic

查看:53
本文介绍了Gridview标签动态的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的先生,
我对asp.net c#Gridview有疑问.当我单击一个下拉列表时,我选择了任何数据,我需要将选定的值绑定到Gridview标签控件.仅在(protected void ddlclassification_description_SelectedIndexChanged(object sender, EventArgs e))此事件上发生此过程.我在这里将我的代码粘贴到下面.

Dear Sir,
I have a doubt in asp.net c# Gridview. When i click a dropdownlist, i select any one of the data,i need to bind selected value to Gridview label control. This process only will happen on (protected void ddlclassification_description_SelectedIndexChanged(object sender, EventArgs e)) this event. Here i pasted my code below.

protected void ddlclassification_description_SelectedIndexChanged(object sender, EventArgs e)
    {
        for (int i = 0; i < gvspec.Rows.Count; i++)
        {
            DropDownList ddlvalue = (DropDownList)gvspec.Rows[i].FindControl("ddlclassification_description");
            Label lblddlclasscode = (Label)gvspec.Rows[i].FindControl("classification_code");       
            string val = ddlvalue.SelectedValue.ToString();
        }
    }

推荐答案

以下是示例HTML

< asp:gridview id ="GridView1" runat ="server" showheader ="true" autogeneratecolumns ="false" xmlns:asp =#unknown">
onrowdatabound ="GridView1_RowDataBound">
<列> < asp:templatefield headertext ="ddl_test">
< itemtemplate>
< asp:dropdownlist runat ="server" id ="ddl_test" autopostback ="true">
OnSelectedIndexChanged ="ddlTest_SelectedIndexChanged">


<列> < asp:templatefield headertext ="lbl_test">
< itemtemplate>
< asp:label runat =服务器" id ="lbl_test">





以下是背后的示例代码

DataTable dt;
受保护的void Page_Load(对象发送者,EventArgs e)
{
如果(!IsPostBack)
{
GridView1.DataSource = CreateSampleData();
GridView1.DataBind();
}
}

DataTable CreateSampleData()
{
dt = new DataTable();
dt.Columns.Add("Name");
DataRow dr = dt.NewRow();
dr ["Name"] ="A";
dt.Rows.Add(dr);

dr = dt.NewRow();
dr ["Name"] ="B";
dt.Rows.Add(dr);

dr = dt.NewRow();
dr ["Name"] ="C";
dt.Rows.Add(dr);

return dt;
}

受保护的void GridView1_RowDataBound(对象发送者,GridViewRowEventArgs e)
{
DropDownList ddl =(DropDownList)(e.Row.FindControl("ddl_test"));
如果(ddl!= null)
{
ddl.DataSource = dt;
ddl.DataValueField =名称";
ddl.DataTextField =名称";
ddl.DataBind();
}
}

受保护的void ddlTest_SelectedIndexChanged(对象发送者,EventArgs e)
{
DropDownList ddl =(DropDownList)sender;
GridViewRow行=(GridViewRow)ddl.NamingContainer;
标签lbl =(Label)row.FindControl("lbl_test");
lbl.Text = ddl.SelectedItem.Text;
}
Following is sample HTML

<asp:gridview id="GridView1" runat="server" showheader="true" autogeneratecolumns="false" xmlns:asp="#unknown">
onrowdatabound="GridView1_RowDataBound">
<columns> <asp:templatefield headertext="ddl_test">
<itemtemplate>
<asp:dropdownlist runat="server" id="ddl_test" autopostback="true">
OnSelectedIndexChanged="ddlTest_SelectedIndexChanged">


<columns> <asp:templatefield headertext="lbl_test">
<itemtemplate>
<asp:label runat="server" id="lbl_test">





Following is sample code behind

DataTable dt;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = CreateSampleData();
GridView1.DataBind();
}
}

DataTable CreateSampleData()
{
dt = new DataTable();
dt.Columns.Add("Name");
DataRow dr = dt.NewRow();
dr["Name"] = "A";
dt.Rows.Add(dr);

dr = dt.NewRow();
dr["Name"] = "B";
dt.Rows.Add(dr);

dr = dt.NewRow();
dr["Name"] = "C";
dt.Rows.Add(dr);

return dt;
}

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
DropDownList ddl = (DropDownList)(e.Row.FindControl("ddl_test"));
if (ddl != null)
{
ddl.DataSource = dt;
ddl.DataValueField = "Name";
ddl.DataTextField = "Name";
ddl.DataBind();
}
}

protected void ddlTest_SelectedIndexChanged(object sender, EventArgs e)
{
DropDownList ddl = (DropDownList)sender;
GridViewRow row = (GridViewRow)ddl.NamingContainer;
Label lbl = (Label)row.FindControl("lbl_test");
lbl.Text = ddl.SelectedItem.Text;
}


这篇关于Gridview标签动态的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆