如何清除绑定源?

时间:2015-02-26 13:16:53

标签: c# winforms data-binding

我有这个型号:

public class CustomerType
{
    public int Id {get; set;}
    public string Name {get; set;}
    public string Description {get; set;}
}

然后,我在WinForms表单上有一个绑定源,它通过执行以下操作绑定到现有对象:

var customerType = repository.Get(id);
bindingSource.DataSource = customerType;

我想清除数据源,所以我这样做:

bindingSource.DataSource = null;

但我得到以下异常:Cannot bind to the property or column Name on the DataSource.

将变量customerType设置为null不会清除数据源。

那么清除数据源的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

你可以尝试

bindingSource.DataSource = typeof(CustomerType);

这是visual studio默认分配的内容。

答案 1 :(得分:-1)

首先,使数据源为空:

this.bindingSource.DataSource = null;

然后清除行:

this.bindingSource.Rows.Clear();

然后将数据源设置为新列表:

this.bindingSource.DataSource = this.GetNewValues();