从LINQ查询ListBox数据源

本文关键字:数据源 ListBox 查询 LINQ | 更新日期: 2023-09-27 18:05:48

假设存在一个List<Person>,其中Person{Name, age, etc}

我想要的是一个ListBox,所有Person的名字作为项。只有细节。我想让它自动更新

我想知道是否有可能创建一个动态数据源,获取List<Person>的名称,然后将ListBox绑定到该数据源。

欢迎使用数据库以外的任何建议。我找到了。net 4中使用的LinqDataSource。是否与。net3.5相似?

从LINQ查询ListBox数据源

我相信你正在寻找比这"更多"的东西,但我不确定你的问题是什么。所以我发布这个代码为你进一步解释你的目标。

    namespace SO_Forms_Demo
{
   public partial class Form1 : Form
   {
      List<person> people;
      public Form1()
      {
         InitializeComponent();
         List<string> dataList = new List<string>(){"Moe","Larry","Curly"};
         listBox1.DataSource = dataList;
          people = new List<person>(){new person(){name="Moe",age=44,shoeSize=9},
                                       new person(){name="Larry",age=45,shoeSize=10},
                                       new person(){name="Curly",age=46,shoeSize=11}
                                      };
          bindList2();
      }
      private void button1_Click(object sender, EventArgs e)
      {
         person Shemp = new person() { name = "Shemp", age = 49, shoeSize = 12 };
         people.Add(Shemp);
         bindList2();
      }
      private void bindList2()
      {
         listBox2.DataSource = null;
         listBox2.DisplayMember = "name";
         listBox2.DataSource = people;
      }
   }
   public class person
   {
      public string name { get; set; }
      public int age { get; set; }
      public int shoeSize { get; set; }
   }

}