C# 将数据拉入web表单的最佳方式是什么;什么是ListView?

C# 将数据拉入web表单的最佳方式是什么;什么是ListView?,c#,asp.net,listview,webforms,client,C#,Asp.net,Listview,Webforms,Client,我是web表单新手,我想构建一个ASP.NET web应用程序,它充当一个客户端,通过TCP连接连接到WCF服务,该连接从WCF服务中提取信息,并将这些信息添加到web表单中的ListView对象中。理想情况下,我希望能够将数据存储在列表中,并且能够在消息传入时对列表中的项目进行排序、筛选、添加、删除和删除,并在这些事件发生时更新ListView 使用ListView实现这种行为的最佳方式是什么?请给我一个编码示例,说明ListView如何绑定到包含ListView数据行的列表对象,特别是我希望

我是web表单新手,我想构建一个ASP.NET web应用程序,它充当一个客户端,通过TCP连接连接到WCF服务,该连接从WCF服务中提取信息,并将这些信息添加到web表单中的ListView对象中。理想情况下,我希望能够将数据存储在列表中,并且能够在消息传入时对列表中的项目进行排序、筛选、添加、删除和删除,并在这些事件发生时更新ListView

使用ListView实现这种行为的最佳方式是什么?请给我一个编码示例,说明ListView如何绑定到包含ListView数据行的列表对象,特别是我希望此列表对象包含代表三个不同单元格的三个字符串(每列一个)在我的ListView中,以便在浏览器中创建以下ListView:

    Column 1 Header | Column 2 Header | Column 3 Header
    ---------------------------------------------------
    Cell 1 Text     | Cell 2 Text     | Cell 3 Text
    ---------------------------------------------------
    Cell 4 Text     | Cell 5 Text     | Cell 6 Text
    ---------------------------------------------------
    Cell 7 Text     | Cell 8 Text     | Cell 9 Text
这是基本的想法

拥有一个表示要在Listview中显示的数据的类:

public class SomeStuff
{
    public String string1 { get; set; }
    public String string2 { get; set; }
    public String string3 { get; set; }
}
myListView.DataSource = allmyDataStuffs;
myListView.DataBind();
然后您将生成这些对象的列表(我假设是从您的服务中):

然后,您可以在ListView的ItemTemplate中随意显示“string1”、“string2”和“string3”

<ItemTemplate>
    <asp:Label ID="string1Lbl" runat="server" Text='<%# Eval("string1")%>' />
    <asp:Label ID="string2Lbl" runat="server" Text='<%# Eval("string2")%>' />
    <asp:Label ID="string3Lbl" runat="server" Text='<%# Eval("string3")%>' />
</ItemTemplate>


这是一篇很棒的帖子,谢谢你的帮助!我将如何处理这些数据的排序?@Alexandru很高兴我能帮上忙!看看这个方法。那里的文档非常有帮助,如果您尝试后遇到问题,在SO和其他地方会有很多关于它的帖子。
<ItemTemplate>
    <asp:Label ID="string1Lbl" runat="server" Text='<%# Eval("string1")%>' />
    <asp:Label ID="string2Lbl" runat="server" Text='<%# Eval("string2")%>' />
    <asp:Label ID="string3Lbl" runat="server" Text='<%# Eval("string3")%>' />
</ItemTemplate>