Ich möchte ein Appearance als this article erwähnt mit verschachtelten ListView-Steuerelement implementieren. In meinem Szenario kann das EntityDataSource-Steuerelement jedoch nicht verwendet werden, sodass ich Daten manuell binden kann.Wie wird ein Tag zu ListViewItem hinzugefügt?
Meine Tabelle:
Categories
PK: UniqueId, Guid
Name, string
ParentId, Guid
<asp:ListView ID="CategoryList" runat="server"
onitemdatabound="CategoryList_ItemDataBound">
<LayoutTemplate>
<table>
<asp:PlaceHolder ID="itemPlaceHolder" runat="server"></asp:PlaceHolder>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td colspan="2"><%# Eval("Name") %></td>
</tr>
</ItemTemplate>
</asp:ListView>
protected void Page_Load(object sender, EventArgs e)
{
using (PractiseEntities context = new PractiseEntities()) {
var result = from categories in context.Categories
select categories;
CategoryList.DataSource = result;
CategoryList.DataBind();
}
}
Ich mag die Unterkategorie hat einen Einzug durch einen <td>
-Tag zu dem Elemente hinzufügen, die „ParentId“ nicht null ist. Und meine Frage ist, wie die generierten HTML-Tags im ItemDataBound-Event bearbeitet werden?
<ItemTemplate>
<tr>
<td colspan="2"><%# GetParentContent(Eval("ParentID")) %></td>
</tr>
</ItemTemplate>
im Code-Behind:
Thx viel, es funktioniert! –