首页 新闻 会员 周边

在detailsview中实现根据在数据库中读取的不同值显示不同的内容

0
悬赏园豆:5 [已解决问题] 解决于 2010-05-18 11:59
<h2>在detailsview中实现根据在数据库中读取的不同值显示不同的内容</h2> <div id="message20353" class="t_msgfont"> <div id="firstpost">protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)<br />&nbsp; {<br />&nbsp; if (e.Row.RowType == DataControlRowType.DataRow)//判断是否为数据行,不判断的话下面的代码会有index超出错误。<br />&nbsp; {<br /><br />&nbsp; if (e.Row.Cells[6].Text == "1")<br />&nbsp; e.Row.Cells[6].Text = "好";<br />&nbsp; else(e.Row.Cells[6].Text == "2")<br />&nbsp; {<br />&nbsp; e.Row.Cells[6].Text = "很好";<br />&nbsp; }<br />&nbsp; }<br /><br />类似的话在detailsview中实现根据在数据库中读取的不同值显示不同的内容<br /><br />if (DetailsView1.Rows[10].Cells[1].Text == "1")<br />{<br />DetailsView1.Rows[10].Cells[1].Text = "很好";<br />}<br />直接这样写会有错误:<br />索引超出范围。必须为非负值并小于集合大小。<br />参数名: index<br /><br />应该如何做判断或者不用判断就可以实现字符替换的方法?</div> </div>
问题补充: 像gridview的 if (e.Row.RowType == DataControlRowType.DataRow) 比较方便。detailsview中也有DataControlRowType.DataRow, 但是不知道用什么指向DataControlRowType.DataRow
lalab的主页 lalab | 初学一级 | 园豆:120
提问于:2010-05-14 13:39
< >
分享
最佳答案
0

可以在数据绑定模板中写,例如:<%# Eval("字段名").ToString()=="1"?"很好":"好" %>,如果条件过多,可以调用CS里的一个Public方法来处理!

收获园豆:5
Astar | 高人七级 |园豆:40805 | 2010-05-14 16:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册