1

私はコントロールを持っているユーザーコントロールを持っており、Repeaterこの中に2つの画像ボタンがあります。

画像ボタンの可視性を false に設定できるようにしたい。

このように、ユーザー コントロールの他のコントロールの可視性を false に設定できます...

this.Comment1.FindControl("btnAddNote").Visible = false;

ItemTemplate...しかし、内の2 つの画像ボタンの可視性を false に設定することはできませんRepeater

どうやってやるの?

4

1 に答える 1

1

リピーター内のコントロールを扱っている場合、FindControl メソッドはアイテム テンプレート内のコントロールにアクセスできません。これを行うには、リピーターの各アイテムをループし、RepeaterItem で FindControl を使用する必要があります。

リピーターはユーザーコントロール内にあるため、このようにユーザーコントロールにメソッドを作成し、ページから呼び出すことをお勧めします。

//user control
public void HideNotes(){
   foreach (RepeaterItem ri in Repeater1.Items)
      ri.FindControl("btnAddNote").Visible = false;
}

//page
void btn_hide_Click(object sender, EventArgs e){
   this.Comment1.HideNotes();
}
于 2011-10-20T19:09:06.133 に答える