有关DataGrid显示数据的问题 - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- 有关DataGrid显示数据的问题 (http://www.webasp.net/article/28/27311.htm) |
| -- 作者:未知 -- 发布日期: 2006-02-17 |
| 经常碰到DataGrid中要显示一个数据,先要用IF语句判断其值,然后决定怎样显示.问题是,DataGrid中不可直接写条件语句,怎样实现呢?这里我用了两种方法。 方法一:在把数据绑定到DataSet后,更改里面的数据,例如: SqlDataAdapter myCmd=new SqlDataAdapter(strSql,myConn); DataSet ds=new DataSet(); myCmd.Fill(ds,"操作员"); for(int i=0;i<ds.Tables[0].Rows.Count;i++) { if(ds.Tables[0].Rows[i]["Oper_state"].ToString()=="1") ds.Tables[0].Rows[i]["Oper_state"]="有效"; else if(ds.Tables[0].Rows[i]["Oper_state"].ToString()=="0") ds.Tables[0].Rows[i]["Oper_state"]="冻结"; } MyDataGrid.DataSource=ds.Tables["操作员"].DefaultView; MyDataGrid.DataBind(); 方法二:通过写一个函数,把绑定到DataGrid某一列的数据转化成要显示字符串,例如: SqlDataAdapter myCmd=new SqlDataAdapter(strSql,myConn); DataSet ds=new DataSet(); myCmd.Fill(ds,"操作员"); MyDataGrid.DataSource=ds.Tables["操作员"].DefaultView; MyDataGrid.DataBind(); 在DataGrid摸版列里这样绑定数据: <%# TurnToStatus(DataBinder.Eval(Container.DataItem,"Oper_state").ToString()) %> |
| webasp.net |