0

マイページは、実行時にチェックボックスのリストを生成します。string.Format("checkbox_{0}, n} n は実行中の番号です。

コードビハインドからチェックボックスコントロールのリストを見つけるにはどうすればよいですか? Page.Form.Controls でそれらを見つけることができませんでした。それらはどこに配置されていますか?

(Request.Form でチェックされたチェックボックスが表示されますが、各コントロールのクライアント側の名前が含まれています。)

ありがとう。

-

- -より詳しい情報 - -

私の反復ループは、次のように、Panel コントロール (マークアップ ページで作成) に CheckBoxes を追加します。

CheckBox checkbox = new CheckBox();
checkbox.Text = "Add to list";
checkbox.ID = string.Format("checkbox_{0}", n.ToString("0"));
Panel1.Controls.Add(checkbox);

チェックボックスはページにうまく表示されます。私はカチカチ音をたてることができます。Http POST ストリームを送信すると、それらのチェックされたものがすべて含まれます。

On post back, Panel1.Controls.Count is 0. ページが最初に生成されたとき、Panel1.Controls.Count は 200 でした。

4

2 に答える 2

0

ページ オブジェクトまたは親コントロール オブジェクトで findcontrol メソッドを使用して、そのチェックボックス オブジェクトを見つけることができます。お気に入り:

CheckBox chx=(CheckBox)Page.FindControl("Checkbox1");
if(chx!=null)
chx.Checked = false;

これをループの中に入れることもできます:

for(int i=0;i<n;i++)
{
CheckBox chx=(CheckBox)Page.FindControl("Checkbox"+n);
if(chx!=null)
chx.Checked = false;
}
于 2013-05-22T05:46:02.490 に答える