0

我有 2 个列表框,每个列表框显示 2 个不同的列表,这些列表由用户输入填充。我想知道是否可以以某种方式组合每个列表框中的数据并将其显示在第三个列表框中。这是 Visual Studio 中的 windowsForms 应用程序。我还想确保在将新值添加到 2 个不同的列表框中时正确更新它。到目前为止,我所做的是将我拥有的两个列表组合在一起:

    public List<String> listAll()
    {
        List<String> all = new List<string>();
        all.AddRange(listFirstName());
        all.AddRange(listSecondName());
        return all;
    }

这个问题首先是我不知道当一个新值添加到其他两个列表时这是否会更新。其次,现在我有了这个新列表,我仍然不知道如何在列表框中显示它。请记住,我仍然需要在主窗体中显示包含前 2 个列表的其他列表框以及包含它们两个值的新列表框。

干杯,欢迎和赞赏任何帮助。

4

2 回答 2

0

您可以使用单独的方法来填充 listBox3。在该方法中,您可以清除现有项目并添加 listBox1 和 listBox3 中的所有项目。

当您向 listBox1 或 listBox2 添加项目时,您可以在添加项目后调用相同的方法。

listBox3.Items.Clear();
listBox3.Items.AddRange(listAll().ToArray());
于 2012-12-05T03:31:04.547 回答
0

通常,如果您想确保 Listbox 动态更新,请使用 ObservableCollection 而不是 List。

ObservableCollection 与 List 具有相同的格式:

ObservableCollection<String> all = new ObservableCollection<string>();

确保添加以下内容

using System.Collections.ObjectModel;
于 2012-12-05T03:33:18.500 回答