0

我有一个DropDownList内部中继器,每当更改所选文本时,我都必须在其中显示它,TextBoxObject reference not set to an instance of an object出现错误

protected void Ddl_SelectedIndexChanged(object sender, EventArgs e)
{
    DropDownList ddl   = (DropDownList)  sender;
    RepeaterItem item  = (RepeaterItem)  ddl .NamingContainer;
    TextBox txt        = (TextBox) item.FindControl("TextBox4");
    txt.Text           = ddl.SelectedItem.Text;
}
4

1 回答 1

1

只需启用 Ddl 下拉列表 autopost back 属性为 true 并添加以下代码行:

protected virtual void RepeaterItemCreated(object sender, RepeaterItemEventArgs e)
{
    DropDownList MyList = (DropDownList)e.Item.FindControl("ddl");
    MyList.SelectedIndexChanged += ddl_SelectedIndexChanged;
}

protected void Ddl_SelectedIndexChanged(object sender, EventArgs e)
 {
     RepeaterItem item  = (RepeaterItem)  Page.FindControl("repeatorid");
     TextBox txt        = (TextBox) item.FindControl("TextBox4");
     txt.Text           = ddl.SelectedItem.Text;     
 }
于 2012-11-01T05:13:58.057 回答