关于数据绑定的时候判断Repeater中数据改变其整行颜色

来源:互联网 发布:淘宝联盟 橱窗推广 编辑:程序博客网 时间:2024/06/05 19:07

PagedDataSource版

 
protected void rpInCome_ItemDataBound(object sender, RepeaterItemEventArgs e) {      if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)            {                Repeater rpInCome = (Repeater)sender;                try                {                    PagedDataSource pds = (PagedDataSource)rpInCome.DataSource;                    if (pds.Count == 0)                        return;                    IEnumerator enumrator = pds.DataSource.GetEnumerator();                    int ncount = 0;                    while (enumrator.MoveNext() && ncount != e.Item.ItemIndex)                        ncount++;                    DataRowView dr = (DataRowView)enumrator.Current;                    double dValue = dr["CurrentEarn"] == DBNull.Value ? 0 : Convert.ToDouble(dr["CurrentEarn"].ToString());                    HtmlControl c = (HtmlControl)e.Item.FindControl("row");                    if (dValue < 0)                    {                        c.Attributes["class"] = "green";                    }                    else if(dValue>0)                    {                        c.Attributes["class"] = "red";                    }                }                catch (Exception ex)                {                    //                }        }}
//Datatable版protected void rpInCome_ItemDataBound(object sender, RepeaterItemEventArgs e)        {            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)            {                Repeater rpInCome = (Repeater)sender;                try                {                    DataTable dt = (DataTable)rpInCome.DataSource;                    if (dt.Rows.Count == 0)                        return;                    for (int i = 0; i < dt.Rows.Count; i++)                    {                        double dValue = dt.Rows[i]["CurrentEarn"] == DBNull.Value ? 0 : Convert.ToDouble(dt.Rows[i]["CurrentEarn"].ToString());                        HtmlControl c = (HtmlControl)e.Item.FindControl("row");                        if (dValue < 0)                        {                            c.Attributes["class"] = "green";                        }                        else if (dValue > 0)                        {                            c.Attributes["class"] = "red";                        }                    }                }                catch (Exception ex)                {                    //                }            }        }