Winform datagridview绑定问题

来源:互联网 发布:亚马逊广告优化 编辑:程序博客网 时间:2024/05/16 19:04

ObservableCollection

这个集合一般在WPF中使用,和datagrid绑定之后,可以直接增加、删除行,datagrid中可以直接对数据进行刷新,如果要实现对某一行中的元素进行修改之后还能实时刷新,只需要实现INotifyPropertyChanged
接口即可

BindingList

在winform,我用ObservableCollection没有成功,只能实现第一次的绑定,之后刷新数据的时候,datagridview中不改变,之后采用了BindingList的集合数据,实现了动态绑定。
改变数据源,datagridview可以动态修改数据,增加、删除、修改时,表格试图中都会实时更新

code

要绑定的类

public class IPInfo{    public string IPAddress{ get; set; }    public bool status { get; set; }}

datagrid设置

BindingList<IPInfo> ipaddrs = new BindingList<IPInfo>();dgIPInfo.Columns[0].DataPropertyName = "IPAddress";dgIPInfo.Columns[1].DataPropertyName = "status";dgIPInfo.DataSource = ipaddrs;ipaddrs.Add(new IPInfo(){    IPAddress = "1111",    status = true});ipaddrs.Add(new IPInfo(){    IPAddress = "222",    status = false});ipaddrs[0].IPAddress = "3333333";  //在此处修改数据,列表也可以被更新
0 0