DataGridView Filter a BindingSource with a List of object as DataSource

后端 未结 3 1357
长发绾君心
长发绾君心 2020-12-14 03:23

I\'m trying to filter a BindingSource with a BindingList as Datasource. I tried BindingSource.Filter = \'Text Condition\' But it didn\'t work, nothing happens, the data on s

3条回答
  •  醉梦人生
    2020-12-14 04:08

    As an alternative to implementing IBindingListView which can be pretty involved you can try this type of filtering:

    BindingList personas = new BindingList {  
    new Person{ Apellido = "App1", DNI = 3011, Edad = 20, Nombre ="Name1", Tamano = new decimal(1.7)} 
    ,new Person{ Apellido = "App2", DNI = 1520, Edad = 30, Nombre ="Name2", Tamano = new decimal(1.5)} 
    ,new Person{ Apellido = "App3", DNI = 5654, Edad = 21, Nombre ="Name3", Tamano = new decimal(1.6)} 
    ,new Person{ Apellido = "App4", DNI = 778, Edad = 40, Nombre ="Name4", Tamano = new decimal(1.68)} 
    };
    
    BindingList filtered = new BindingList(personas.Where(
                                     p => p.Apellido.Contains("App1")).ToList());
    grid.DataSource = filtered;
    

提交回复
热议问题