日期:2014-05-20  浏览次数:20857 次

一个小问题!
foreach   (DataListItem   i   in   this.DataList1.Items)
                        {
                                CheckBox   oCheck   =   (CheckBox)i.FindControl( "oCheckBox1 ");
                                Spot   s   =   new   Spot(oCheck.Text);
                                if   (oCheck.Checked)
                                {
                                        //累加结果
                                }
                        }

有一个DataList控件,里边又有一个CheckBox控件,
每个CheckBox控件代表了一个数字,如果选中,则进行相加,否则为0,
就是所有已选中的CheckBox控件值(Text属性为数字值)相加
要求算出累加结果...........

------解决方案--------------------
private void Button1_Click(object sender, System.EventArgs e)
{
int sumVla = 0;

for(int i=0;i <dl.Items.Count;i++)
{
CheckBox _cb = (CheckBox)dl.Items[i].FindControl( "mycb ");

Response.Write( "内容: " + _cb.Text + " <br> ");

if(((CheckBox)dl.Items[i].FindControl( "mycb ")).Checked)
{
CheckBox tempcb = (CheckBox)dl.Items[i].FindControl( "mycb ");
Response.Write( "选择状态:y <br> ");
sumVla += Convert.ToInt32(tempcb.Text);
}
else
{
Response.Write( "选择状态:n <br> ");
}

}

Response.Write( "合计: " + sumVla);
}