数値の配列をループして、それらが関連付けられているチェックボックスに一致させ、そのボックスにチェックマークを付けようとしています。
私のチェックボックスは次のように設定されています:
<input type="checkbox" runat="server" id="someID" name="somename" value="1234" />
ページが読み込まれるときの私のコードは現在次のようになっています。
foreach (string interest in interests_Var){
foreach (var c in Page.Controls)
{
}
}
interests_Var
は、異なる数値を含む私の配列です。それらの 1 つが であると仮定します1234
。ページ コントロールをループしているときに、コントロールの値を自分の数値と比較したいと考えています。それが私の番号と等しい場合は、属性を適用したいと思いますchecked="checked"
。使用しているコントロールの ID を見つけ、その ID を使用して新しい属性を追加する必要があると想定しています。c
または、変数を使用して属性を追加する方法はありますか?
私はこの設定に固執しているわけではないので、より良い方法を知っていれば、私はすべて耳を傾けます. 助けと提案をありがとう。
ありがとう
良い提案がたくさん。これらを少し試してみます。別のプロジェクトで横道にそれました。
解決済み
わかりましたので、これが私の終了コードです。助けてくれてありがとうジェームズ。
foreach (string interest in interests_Var)
{
foreach (var chkCtrl in Panel1.Controls.OfType<CheckBox>())
{
if (chkCtrl.Attributes["value"].ToString() == interest.ToString())
{
chkCtrl.Checked = true;
}
}
}