Hej!
Jag försöker göra en meny med en datalist med huvudkategorier och en datalist i denna med underkategorier. Alltså en datalist i en datalist.
Kategorierna finns i en tabell (som heter Kategori) i en accessdatabas med kolumnerna id, Kategori och Underkategori.
Jag har försökt lösa detta med exemplet här http://aspnet101.com/aspnet101/tutorials.aspx?id=8 men jag får felmeddelandet "'column' argument cannot be null. Parameter name: column".
Någon vänlig själ som kan hjälpa mig? :)
Kod:
<asp:datalist id=dltKategori Runat="server" DataKeyField="Kategori" RepeatLayout="Flow">
<SelectedItemTemplate>
<strong><%# Container.DataItem("Kategori") %></strong><br>
<asp:datalist id="dltSub" Runat="server" datasource='<%# Container.DataItem.Row.GetChildRows("relKat") %>'>
<ItemTemplate>
<%# Container.DataItem("Underkategori") %><br>
</ItemTemplate>
</asp:datalist>
</SelectedItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="btnKategori" Runat="server" Text='<%# Container.DataItem("Kategori") %>' CommandName="Select" /><br>
</ItemTemplate>
</asp:datalist>
Private Sub Page_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Dim conCampus As OleDb.OleDbConnection
Dim daKategori, daSub As OleDb.OleDbDataAdapter
Dim dsKategori As New DataSet
Dim SQL, sqlSub As String
conCampus = New OleDb.OleDbConnection(Application("conString"))
SQL = "SELECT id,Kategori FROM Kategori"
daKategori = New OleDb.OleDbDataAdapter(SQL, conCampus)
daKategori.Fill(dsKategori, "Kategori")
sqlSub = "SELECT Underkategori FROM Kategori"
daSub = New OleDb.OleDbDataAdapter(sqlSub, conCampus)
daSub.Fill(dsKategori, "Underkategori")
dsKategori.Relations.Add("relKat", _
dsKategori.Tables("Kategori").Columns("id"), _
dsKategori.Tables("Underkategori").Columns("id"))
dltKategori.DataSource = dsKategori.Tables("Artikel").DefaultView
dltKategori.DataBind()
End Sub