日期:2014-05-18  浏览次数:20575 次

如何遍历datalist模板列中的dropdownlist中的值,并求和
如何遍历datalist模板列中的dropdownlist中的值,并求和

------解决方案--------------------
int iSum = 0;
for(int i = 0;i < DataList1.Items.Count;i++)
{
DropDownList ddl1 = (DropDownList)DataList1.Items[i].FindControl("DropDownList1");
iSum += Convert.ToInt32(ddl1.SelectedValue);
//iSum += Convert.ToInt32(ddl1.SelectedItem.Text);
}

------解决方案--------------------
假如你在gridview中添加一个模板列,并 在模板列中存放了一个dropdownlist控件。那么,问题就是:你如何去操作这个dropdownlist控件????

//对于gridview控件: 

System.Web.UI.WebControls.GridViewRow rows = (GridViewRow)((Control)sender).Parent.Parent;//获取对于ui层次结构中服务器控件的父控件的父控件的引用
DropDownList list = (DropDownList)rows.FindControl("DropDownList1");

//对于datagrid控件:

 System.Web.UI.WebControls.DataGridItem item = (DataGridItem)((Control)sender).Parent.Parent;//获取对于ui层次结构中服务器控件的父控件的父控件的引用
DropDownList list = (DropDownList)rows.FindControl("DropDownList1");

其实运用的就是findcontrol方法。
System.Web.UI.WebControls.GridViewRow rows = (GridViewRow)((Control)sender).Parent.Parent;//
========
给你个如何获取“datagrid中放个dropdownlist控件的代码”,应该对你求和有用的。
------解决方案--------------------
7楼的就行
C# code
   int sum=0;
    foreach (DataListItem item in DataList1.Items)
    {

        DropDownList   ddl1   =   (DropDownList)item.FindControl("DropDownList1"); 
        sum   +=   Convert.ToInt32(ddl1.SelectedValue); 
        //iSum   +=   Convert.ToInt32(ddl1.SelectedItem.Text); 
    }