如何根据条件在数据列表中显示图像
问题描述:
我想根据从数据库检索到的值更改DataList中显示的图像。
场景:我在我的表中有5个优先级,按照优先级我需要在datalist中显示图像。如何根据条件在数据列表中显示图像
例如
优先级= 5(红色图像)
优先级= 1(绿色图像)
如何将显示数据列表每个优先级的那些图像作为?
答
在Datalist中设置一个辅助函数。示例代码
<asp:Image ID="PriorityImage" runat="server"
ImageURL='<%# SetPriorityImage(Eval("Priority"))%>'/>
AT后面的代码(aspx.cs)
protected string SetPriorityImage(object priority)
{
string image = "";
int prioritySwitch = Convert.ToInt32(priority);
switch (prioritySwitch)
{
case 1:
image="~/Images/Red.png";
break;
case 5:
image="~/Images/Green.png";
break;
default:
image="~/Images/Error.png";
break;
}
return image;
}
免责声明:这只是伪代码,因此没有尝试捕捉机制。
答
你可以在ItemDataBound
事件datalist上做。
protected void datalist1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
// Your code logic comes here. here you can find image object that you have used in //ItemTemplate
}
}
希望你可以在这里做其余的工作。
+0
Iam刚刚新Datalist控制,请帮助我应该写什么..与一些代码片段,非常有用+ +我 – santhosh 2011-04-07 11:21:17
请把你的代码放在这里..你已经尝试过。 – 2011-04-07 11:02:38
我是这个Datalist的新手。请帮助如何做到这一点... IAM在非常紧急,请尝试帮助我与示例代码 – santhosh 2011-04-07 11:28:54