首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

郁闷有关问题,哪位高手能告诉小弟我为什么!小弟我快疯了

2012-02-02 
郁闷问题,谁能告诉我为什么!!我快疯了SqlConnectioncnnewSqlConnection( DataSourcelocalhostUserIDs

郁闷问题,谁能告诉我为什么!!我快疯了
SqlConnection   cn   =   new   SqlConnection( "Data   Source   =   localhost;User   ID   =   sa;Password   =   pp;DATABASE   =   db ");
                        cn.Open();
                        SqlCommand   cmd   =   new   SqlCommand( "Select   wo_id,wo_state   from   Working ",cn);
                        DataTable   tbl   =   new   DataTable();
                        SqlDataAdapter   da   =   new   SqlDataAdapter(cmd);
                        da.Fill(tbl);
                        for   (int   i   =   0;   i   <   tbl.Rows.Count;   i++)
                        {
                                ListViewItem   lvi   =   new   ListViewItem();
                                switch   (tbl.Rows[i][ "wo_state "].ToString())
                                {
                                        case   "完成 ":
                                                lvi.ForeColor   =   Color.Red;
                                                break;
                                        case   "开始 ":
                                                lvi.ForeColor   =   Color.Green;
                                                break;
                                        case   "待工 ":
                                                lvi.ForeColor   =   Color.Blue;
                                                break;
                                        default:
                                                break;


                                }
                                lvi.Text   =   tbl.Rows[i][ "wo_id "].ToString();
                                ltv1.Items.Add(lvi);
                        }
这样写应该没错吧,就是不行,列出来的几个Item全是黑色的字。
但是这么写又可以:
for   (int   i   =   0;   i   <   10;   i++)
                        {
                                ListViewItem   lvi   =   new   ListViewItem();
                                switch   (i   %   3)
                                {
                                        case   0:
                                                lvi.ForeColor   =   Color.Red;
                                                break;
                                        case   1:
                                                lvi.ForeColor   =   Color.Blue;
                                                break;
                                        case   2:
                                                lvi.ForeColor   =   Color.Green;
                                                break;
                                        default:
                                                break;
                                }
                                lvi.Text   =   i.ToString();
                                ListView1.Items.Add(lvi);


                        }
LitsView控件和TreeView控件都是这样,这是郁闷!
我快疯了,谁能帮帮我!?告诉我到底错在哪里?


[解决办法]
foreach (GridView row in this.GridView1.Rows)
{
Label lb= row.FindControl( "label ") as Label;
if (lb != null)
{
if (lb.Text == "完成 ")
{
lb.ForeColor = Color.Red;
}
else if (lb.Text == "开始 ")
{

}
else if (lb.Text == "待工 ")
{

}
else
{

}
}
}

你应该循环的数据控件,不是数据吧?
[解决办法]
不明白具体意思
但是
根据你的程序在我的电脑上可以达到效果啊
Sqlcon = new SqlConnection(ConString);
Sqlcon.Open();
string SqlString= "select name,Statue from TempDT01 ";
SqlAd = new SqlDataAdapter(SqlString,Sqlcon);
DataTable dt =new DataTable();
SqlAd.Fill(dt);
for(int i=0;i <dt.Rows.Count;i++)
{
ListViewItem lvt = new ListViewItem();
switch(dt.Rows[i][1].ToString())
{
case "完成 ":
lvt.ForeColor =Color.Red;
break;
case "待确认 ":
lvt.ForeColor = Color.Yellow;
break;
case "未完成 ":
lvt.ForeColor =Color.Blue;
break;
}
lvt.Text=dt.Rows[i][0].ToString();
this.listView1.Items.Add(lvt);
}
}

热点排行