将列表中的数据添加到ListBox C#

时间:2018-04-14 07:00:38

标签: c#

我有listlistboxbuttontextbox

我的想法是通过点击按钮,将文本框的内容添加到列表中,然后将数据传递到列表框。

我的问题是,如果您添加我写的内容,但列表框中的项目会被您插入的新项目覆盖。我只想添加更多项目。到列表并转到列表框。非常感谢您的回答。这是我按钮的代码:

private void button54_Click(object sender, RoutedEventArgs e)
{
    List<Playlists> List1 = new List<Playlists>();
    List1.Add(new Playlists(textBox3.Text, @rutaalbum));
    lbListbox.ItemsSource = List1;
}

2 个答案:

答案 0 :(得分:2)

我正在为您的播放列表课程制作演示版。

已重写ToString以便在列表框中显示某些文本。没有它,您将只显示班级名称。

使用ObservableCollection而不是List,以便在添加新项目时更新列表框。

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        MyList = new ObservableCollection<Playlists>();
        MyListBox.ItemsSource = MyList;
    }

    private ObservableCollection<Playlists> MyList { get; }

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        MyList.Add(new Playlists(textBox3.Text));
    }
}

public class Playlists
{
    public Playlists(string title) { Title = title; }
    public string Title { get; }
    public override string ToString() { return Title; }
}

答案 1 :(得分:1)

看来,您总是使用新列表创建项目。需要将项目添加到现有列表中。

使用下面的代码。它会很有用。

private void button54_Click(object sender, RoutedEventArgs e) {            
     lbListBox.Items.Add(new Playlists(textBox3.Text, @rutaalbum));       

}