我对 ASP.NET 有点陌生,所以请多多包涵。我遇到了this solution这将允许我将字符串数组作为一行数据添加到 ListView。但是,我不确定设置它的正确方法。在尝试使用我放到网站上的 ListView 的解决方案时,我被告知 new ListViewItem()
需要一个 ListViewItemType 类型的参数。示例解决方案没有提供,那么它在 ASP.NET 中有什么不同吗?
所以我要问的主要问题是:如果我有一个字符串数组,我如何将它作为 ASP.NET 中的一行数据添加到 ListView?
编辑:我想确保我要求的是正确的控件。我的印象是 ListView 是某种东西 like this (但在 ASP.NET 中),但到目前为止我得到的不是。这只是一行文本。
最佳答案
如果你想像例子中那样显示,你想使用GridView
而不是ListView
。
字符串集合不足以显示在多列中。您需要一组对象。
屏幕截图(上图是ListView,下图是GridView)
示例代码
<asp:ListView runat="server" ID="ListView1">
<ItemTemplate>
<%# Eval("Name") %>,
<%# Eval("Email") %>,
<%# Eval("Phone") %><br />
</ItemTemplate>
</asp:ListView>
<br/>
<asp:GridView ID="GridView1" AutoGenerateColumns="True" runat="server" />
public class User
{
public string Name { get; set; }
public string Email { get; set; }
public string Phone { get; set; }
}
protected void Page_Load(object sender, EventArgs e)
{
var collections = new List<User>
{
new User {Name = "Jon Doe", Email = "john@doe.com", Phone = "123-123-1234"},
new User {Name = "Marry Doe", Email = "marry@doe.com", Phone = "456-456-4567"},
new User {Name = "Eric Newton", Email = "eric@newton.com", Phone = "789-789-7890"},
};
ListView1.DataSource = collections;
ListView1.DataBind();
GridView1.DataSource = collections;
GridView1.DataBind();
}
关于c# - 用字符串填充 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17707663/