1

リピーター内にドロップダウンリストがあり、選択したテキストが変更されるたびに、テキストボックスに表示する必要があります。どうすればよいですか?

 protected void Repeater1_ItemCreated(object sender, RepeaterItemEventArgs e)
{
    DropDownList ddl = (DropDownList)e.Item.FindControl("DropDownList6");
    TextBox txt = (TextBox)e.Item.FindControl("TextBox4");
    txt.Text = ddl.SelectedItem.Text;
}
4

3 に答える 3

1

ItemCreatedまず、ライフサイクルの早い段階でトリガーされたため(ViewStateの場合)、使用しないでください。ItemTypeまた、最初のものを確認する必要があります。

代わりに、DropDownLists SelectedIndexChangedイベントを直接使用してください。

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;
}
于 2012-10-31T14:07:24.817 に答える
0

適切なOnSelectedChange(somwthing)イベントハンドラーをDropDownListに追加し、イベントが発生したときにそれをキャッチして、必要なことを実行できます。クライアント側またはサーバー側の両方で実行できます。

于 2012-10-31T14:07:27.973 に答える
0

各ドロップダウンコントロールを適切なイベントハンドラーに関連付けるには、ハンドラーの追加を使用する必要があります。目の前にVSはありませんが、次のようになります。

txt.SelectedIndexChanged + = new EventHandler(YourMethodName)

于 2012-10-31T14:09:46.820 に答える