伙计们,我在这里疯了。请给我一个listview,我想动态地在按钮点击时将文本框中的项目添加到列表中。我想删除按钮点击。我的问题是我目前无法在listview中添加单个项目,因为我正在编写错误。我希望我的listview有两列,因此在数组中插入两个数据字符串,如下所示
string[] array = { DropDownListType.SelectedItem.Text, txtDescription.Text };
List<string> list = new List<string>();
list.Add(array[0]);
foreach(string[] value in list)
{
ListViewItem lvi = new ListViewItem(value);
ListViewDesc.Items.Add(lvi);
}
之前,我在没有列表的情况下从数组中添加了我的字符串,但都失败了。我真的很困惑。此外,属性“Listview.Column.Add
”给出未知的属性错误。请以任何其他方式实现这一点,我将不胜感激。我的列表视图如下。
<asp:ListView ID="ListViewDesc" runat="server">
</asp:ListView>
答案 0 :(得分:1)
你的foreach正在尝试使用数组,但“list”是一个字符串列表尝试
string[] array = { DropDownListType.SelectedItem.Text, txtDescription.Text };
List<string> list = new List<string>();
list.Add(array[0]);
foreach(var value in list)
{
ListViewItem lvi = new ListViewItem(value);
ListViewDesc.Items.Add(lvi);
}
另请参阅http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listview.grouptemplate.aspx
除非你必须我不会使用listview。我认为表格更好
答案 1 :(得分:0)
改为使用数据绑定:
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
var list = new List<ItemsInList>
{
new ItemsInList { Text = "Testtext1" },
new ItemsInList { Text = "Testtext2" },
};
ListViewDesc.DataSource = list;
ListViewDesc.DataBind();
}
}
public class ItemsInList
{
public string Text { get; set; }
}
<asp:ListView ID="ListViewDesc" runat="server">
<ItemTemplate>
<p>
<%# Eval("Text") %>
</p>
</ItemTemplate>
</asp:ListView>