2
我想用C#多张图片添加到在ASP.net数据网格视图中的列如何的ItemTemplate添加到GridView编程
图像名称是在数据库中,一些用户将有10个图像和其他人将没有图像,有些会在两者之间的某处。
我想通了,我可以添加一个ItemTemplate,但我要的是负载以编程方式生成的数量,
这可能
<asp:GridView ID="dgvTopPlayers" runat="server" AutoGenerateColumns="False"
onrowdatabound="dgvTopPlayers_RowDataBound"
onrowcreated="dgvTopPlayers_RowCreated" ShowHeaderWhenEmpty="True">
<Columns>
<asp:HyperLinkField DataNavigateUrlFields="UserID"
DataNavigateUrlFormatString="~/UserProfile.aspx?UserId={0}"
DataTextField="UserName" HeaderText="UserName"
/>
<asp:BoundField DataField="Last7Days" HeaderText="Last7Days" />
<asp:BoundField DataField="LastMonth" HeaderText="LastMonth" />
<asp:BoundField DataField="TotalPoints" HeaderText="TotalPoints" />
<asp:BoundField DataField="IdeaCount" HeaderText="IdeaCount" />
<asp:BoundField DataField="ChallengeCount" HeaderText="ChallengeCount" />
<asp:TemplateField HeaderText="Badges" >
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Eval("BadgeIcons") %>'
Tooltip='<%# Eval("BadgeIcons") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Image ID="Image1" runat="server" AlternateText='<%# Eval("BadgeIcons") %>'
ImageUrl='<%# Eval("BadgeIcons") %>' />
<asp:Image ID="Image2" runat="server" AlternateText='<%# Eval("BadgeIcons") %>'
ImageUrl="~/Images/puzzleIcon.png" />
<asp:Image ID="Image3" runat="server" AlternateText='<%# Eval("BadgeIcons") %>'
ImageUrl="~/IMAGES/caution.png" />
<asp:Image ID="Image4" runat="server" AlternateText='<%# Eval("BadgeIcons") %>'
ImageUrl="~/IMAGES/reportabuse.png" />
<asp:Image ID="Image5" runat="server" AlternateText='<%# Eval("BadgeIcons") %>'
ImageUrl="~/IMAGES/yellow_star.png" />
</ItemTemplate>
<ItemStyle Width="35%" />
</asp:TemplateField>
</Columns>
</asp:GridView>
我喜欢这种方法,1个最后一个问题的所有字符串都在BADGEICONS,所以他们是一个字符串“img1.png,img2.png,img2.png,蝴蝶结......我重新访问Badgeicons代码在后面,badgeicons是列表的一部分 – 2013-03-20 17:25:44
我更新了答案,请确保您投射'e.Row.DataItem'来合适对象,例如,如果数据源是DataView或DataTable,则为DataRowView。 – Win 2013-03-20 17:58:49