0

伙计们,我在这里疯了。请我有一个列表视图,我想动态地在按钮单击时将文本框中的项目添加到列表中。我也想删除按钮点击。我的问题是我目前无法在列表视图中添加单个项目,因为我遇到错误。我希望我的列表视图有两列,因此在数组中插入两个数据字符串,如下所示

  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>
4

2 回答 2

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

除非你有,否则我不会使用列表视图。我认为一张桌子更好

于 2013-09-23T07:00:26.940 回答
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>
于 2013-09-23T07:07:29.840 回答