如何在Listview中显示列表项?

时间:2012-03-30 01:43:16

标签: c# asp.net

我的aspx文件中有一个ListView,如下所示:

<asp:ListView ID="ListView1" runat="server"></asp:ListView>

然后我有这样的List:

List<string> mylist = new List<string>();

我试图像这样填充ListView:

foreach(string elem in mylist)
{
  ListView1.Items.Add(new ListViewItem(elem));
}

但我的编译器告诉我最好的过载匹配错误&amp;无法将字符串转换为ListViewItem。这是一个asp.net 4.0网络应用程序。有什么建议吗?

3 个答案:

答案 0 :(得分:4)

尝试绑定ListView,如下所示:

代码隐藏

List<string> mylist = new List<string>() { "stealthy", "ninja", "panda"};
listView.DataSource = mylist;
listView.DataBind();

ASPX

<asp:ListView ID="listView" runat="server">
    <ItemTemplate>
        <asp:Label Text="<%#Container.DataItem %>" runat="server" />
    </ItemTemplate>
</asp:ListView>

答案 1 :(得分:2)

使用ListView,您应该能够将数据绑定到控件的DataSource

ListView1.DataSource = myList;
ListView1.DataBind();

答案 2 :(得分:2)

ListViewItem没有任何带字符串的构造函数。 另外ListView.ItemsIList<ListViewDataItem>,而不是ListViewItem

的集合

您可能希望使用数据绑定而不是反复添加项目。