3
我做了兩個類顯示類嵌套列表 - 例如只有一個問題:如何在列表視圖
public class Item
{
public int itemId { get; set; }
public string name { get; set; }
public Item() { }
public Item(int itemId, string name)
{
this.itemId = itemId;
this.name = name;
}
}
public class GroupOfitems
{
public string groupName { get; set; }
public List<Item> itemList;
public GroupOfitems()
{
itemList = new List<Item>();
}
public GroupOfitems(string groupName, List<Item> itemList)
{
this.groupName = groupName;
this.itemList = itemList;
}
}
public List<GroupOfitems> TestMethod()
{
// ADD SOME ITEMS TO FRUIT GROUP
List<Item> bla = new List<Item>();
bla.Add(new Item(1, "Banana"));
bla.Add(new Item(2, "Apple"));
// ADD SOME ITEMS TO VEGETABLES GROUP
List<Item> bla2 = new List<Item>();
bla2.Add(new Item(5, "Carot"));
bla2.Add(new Item(6, "Tomato"));
// ADD SOME ITEMS TO SOURCE
List<GroupOfitems> result = new List<GroupOfitems>();
result.Add(new GroupOfitems("Fruit", bla));
result.Add(new GroupOfitems("Vegetables", bla2));
// RETURN SOURCE
return result;
}
而在我的.aspx文件中我有ObjectDataSource
和ListView
,如:
<asp:ObjectDataSource ID="odsRecipesIngredientListTest" runat="server"
SelectMethod="TestMethod" TypeName="MyRepository">
</asp:ObjectDataSource>
<asp:ListView ID="lvRecipeIngredients" runat="server"
DataSourceID="odsRecipesIngredientListTest"
ItemPlaceholderID="itemPlaceHolderId">
<LayoutTemplate>
<asp:PlaceHolder id="itemPlaceHolderId" runat="server" />
</LayoutTemplate>
<ItemTemplate>
<asp:Label ID="lblGroupName" Text='<%# Eval("groupName") %>' runat="server" /><br />
<asp:ListView ID="lvIngredientList" runat="server"
DataSource='<%# Eval("itemList") %>'
ItemPlaceholderID="itemPlaceHolderId">
<LayoutTemplate>
<asp:PlaceHolder id="itemPlaceHolderId" runat="server" />
</LayoutTemplate>
<ItemTemplate>
<asp:Label ID="Label4" Text='<%# Eval("itemId") %>' runat="server" />
<asp:Label ID="Label16" Text='<%# Eval("name") %>' runat="server" />
</ItemTemplate>
</asp:ListView>
</ItemTemplate>
</asp:ListView>
這是這個問題的一個非常快速的例子。 Eveything正常工作,但我不能將itemList
綁定爲DataSource
嵌套ListView
(DataSource='<%# Eval("itemList") %>'
)(因爲itemList
不是類中的屬性)。這是綁定的正確方法,還是我需要改變我的方法?
你有沒有試過嵌套中繼器控制? – Yahya 2013-04-11 10:30:28
我不認爲嵌套的listview是一個問題。我會嘗試它,但我認爲DataSource像列表- itemList列表是不正確的...我會嘗試與中繼器,並在這裏給它一個評論 –
janilemy
2013-04-11 10:32:51
就像我說的,同樣的錯誤 - DataBinding:MyRepository .. 。datasource GRoupOfItems不包含名爲itemList的屬性...它綁定groupName屬性就像它應該但無法找到itemlist屬性,因爲它不屬性... – janilemy 2013-04-11 10:34:57