列表视图动态添加和删除不起作用的项目
本文关键字:不起作用 项目 删除 视图 动态 添加 列表 | 更新日期: 2023-09-27 18:32:33
伙计们,我快疯了。请问我有一个列表视图,我想动态地在单击按钮时将文本框中的项目添加到列表中。我也想在单击按钮时删除。我的问题是我目前无法将单个项目添加到列表视图中,因为我出现 gtetting 错误。我希望我的列表视图有两列,因此在数组中插入两个数据字符串,如下所示
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>
你的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
除非你必须这样做,否则我不会使用列表视图。我认为表格更好
改用数据绑定:
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>