DataGrid 简单问题求助
论坛主题列表用DataGrid 显示
想在第一列显示一个图标。
这个图标由数据库表中的displayorder(这个数据类型为int)值来定,
displayorder为隐藏列
如果当前行的displayorder值等于1则显示image/jing.gif
如果当前行的displayorder值等于2则显示image/ding.gif
我想了2中方式
一是 2种图片各为第2列和第3列,根据displayorder的值来选择关闭2列或3列
二是 在图片那列放2个div,取不同的ID,默认Visible = false ,根据displayorder的值来打开显示某个。
不过这样做遇到了问题,这样控制DataGrid外的Visible = true 可以,可是在模板列里就总提示并不包含 总提示“news”并不包含“div1”的定义
我刚接触,水平很差,身边又没有可以问的朋友,所以来这里请教,希望有人热心帮帮我,谢谢!
[解决办法]
private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.Cells[2].Text== "1 ")//displayorder列的值
{
((System.Web.UI.WebControls.Image)e.Item.Cells[1].FindControl( "imgState ")).ImageUrl= "image/jing.gif
"; //imgState为DataGrid中图片控件的ID
}
if(e.Item.Cells[2].Text== "2 ")
{
((System.Web.UI.WebControls.Image)e.Item.Cells[1].FindControl( "imgState ")).ImageUrl= "image/ding.gif
";
}
}
[解决办法]
在前台动态生成列
[解决办法]
<%# ... %> 就可以实现.
[解决办法]
图片控件是放在cell[1] 里吗?