ネストされたデータリスト構造があり、すべてのカテゴリにすべてのチェックボックスを選択したいと考えています。
一番上のチェックボックスは正常に機能しますが、メインカテゴリごとにそれを行う方法がわかりません
これはうまくいきます:
protected void cbTamaminiSec_CheckedChanged(object sender, EventArgs e)
{
CheckBox cbTemp;
foreach (DataListItem ItemP in parentDataList.Items)
{
cbTemp = (CheckBox)parentDataList.Items[ItemP.ItemIndex].FindControl("cbTumunuSec");
cbTemp.Checked = cbTamaminiSec.Checked;
DataList nestedDataList = (DataList)parentDataList.Items[ItemP.ItemIndex].FindControl("nestedDataList");
foreach (DataListItem Item in nestedDataList.Items)
{
cbTemp = (CheckBox)nestedDataList.Items[Item.ItemIndex].FindControl("cbTamam");
cbTemp.Checked = cbTamaminiSec.Checked;
}
}
}
しかし、部分選択についてはわかりません(parentdatalistのチェックボックスのコードの下)問題を強調するために、選択したIDを「0」にしました
protected void cbTumunuSec_CheckedChanged(Object sender, EventArgs e)
{
int selected = 0;//= (int)parentDataList.SelectedItem.ToString(); // problem is here..
DataList nestedDataList = (DataList)parentDataList.Items[selected].FindControl("nestedDataList");
foreach (DataListItem Item in nestedDataList.Items)
{
CheckBox cbTemp = (CheckBox)nestedDataList.Items[Item.ItemIndex].FindControl("cbTamam");
cbTemp.Checked = true;
}
}
解決策は何ですか