【发布时间】:2011-07-03 10:35:33
【问题描述】:
我有一个gridview页面..我添加了两列!..我不想使用向导将数据放入其中,所以我在互联网上寻找一些代码,讨论动态地将数据馈送到gridview列项。 .
如果找到的话,我添加了一些代码并对其进行了修改以生成以下代码:
<Columns>
<asp:TemplateField HeaderText="תגובות">
<ItemTemplate>
<asp:Label ID="Comments" runat="server" Text='<%# GetImage(Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "TicketReserved"))) %>'></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="שם משתמש"><ItemTemplate>
<asp:Image ID="imgButton" runat="server"
ImageUrl='<%# GetImage(Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "TicketReserved"))) %>' ></asp:Image>
<br />
<asp:Label ID="Label1" runat="server" Text='<%# GetImage(Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "TicketReserved"))) %>'></asp:Label>
</ItemTemplate>
<HeaderStyle Width="100px" />
<ItemStyle Width="100px" />
</asp:TemplateField>
</Columns>
功能:
GetImage(Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "TicketReserved"))) %>
是一个虚拟函数,我想用我的代码中的属性进行交换。
这里是后面的代码以及它应该做什么。
List<ControlPanelMessages> allComments;
protected void Page_Load(object sender, EventArgs e)
{
allComments = ControlPanelMessages.GetAllControlPanelPosts();
foreach (var item in allComments)
{
Name=item.Name;
Comment=item.Comment;
Image =ResolveUrl(item.Img);
}
}
public string Name { get; set; }
public string Comment { get; set; }
public string Image { get; set; }
这个方法:
ControlPanelMessages.GetAllControlPanelPosts()
在所有 sql 语句后返回一个列表,以获取用户名、用户头像和用户评论的文本。
我的问题是如何安全地插入这 3 个属性而不是
GetImage(Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "TicketReserved"))) %>
我希望 Gridview 将项目添加到列中,直到 foreach 语句结束!!!!
【问题讨论】: