datalist绑定的数据库。有一字段是“难度等级”
1,2,3
要实现功能:跟据“难度等级”显示不同的星星图片
前台:
<tr>
<td style="color: rgb(101,101,101); font-size: 14; height: 30px;">
<asp:Label ID="lb1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "KunNan")%>'></asp:Label>
<asp:Image ID="Image1" runat="server" AlternateText='<%# DataBinder.Eval(Container.DataItem, "KunNan")%>' />
</td>
</tr>
后台:
protected void dlFree_OnItemDataBound(object sender, DataListItemEventArgs e)
{
Label lbtmp=(Label)e.Item.FindControl("lb1");
Image imageTmp=sender as Image;
switch (lbtmp.Text)
{
case "1": imageTmp.ImageUrl = "~/images/star_all1.jpg"; break; case "2": imageTmp.ImageUrl = "~/images/star_all2.jpg"; break;
default: imageTmp.ImageUrl = "~/images/star_all3.jpg"; break;
}
}红色地方报错:未将对象引用设置到对象的实例。
1,2,3
要实现功能:跟据“难度等级”显示不同的星星图片
前台:
<tr>
<td style="color: rgb(101,101,101); font-size: 14; height: 30px;">
<asp:Label ID="lb1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "KunNan")%>'></asp:Label>
<asp:Image ID="Image1" runat="server" AlternateText='<%# DataBinder.Eval(Container.DataItem, "KunNan")%>' />
</td>
</tr>
后台:
protected void dlFree_OnItemDataBound(object sender, DataListItemEventArgs e)
{
Label lbtmp=(Label)e.Item.FindControl("lb1");
Image imageTmp=sender as Image;
switch (lbtmp.Text)
{
case "1": imageTmp.ImageUrl = "~/images/star_all1.jpg"; break; case "2": imageTmp.ImageUrl = "~/images/star_all2.jpg"; break;
default: imageTmp.ImageUrl = "~/images/star_all3.jpg"; break;
}
}红色地方报错:未将对象引用设置到对象的实例。
{
if (e.Item.ItemType== ListItemType.Item||e.Item.ItemType== ListItemType.AlternatingItem)
{
Label lbtmp=(Label)e.Item.FindControl("lb1");
Image imageTmp=sender as Image;
switch (lbtmp.Text)
{
case "1": imageTmp.ImageUrl = "~/images/star_all1.jpg"; break; case "2": imageTmp.ImageUrl = "~/images/star_all2.jpg"; break;
default: imageTmp.ImageUrl = "~/images/star_all3.jpg"; break;
}
}
}同样注意红颜色的
这个也是要加的
还有Image imageTmp=sender as Image;---------------->Image imageTmp = (Image)e.Item.FindControl("Image控件的ID");
判断item的类型。。
每天回帖就可以得10分可用分