经过一段时间的研究,渐渐的感觉如果使用得当,bindinglist还是很有用的,其中同步的方式两种都可以:
方式1: 在界面层使用 datagridview.Refresh()方法。
方式2: 在对象层使用BindingList.ResetBinding()方法。
另外,如果需要处理删除对象的事情,可以重写bindingList的RemoveItem()方法, 比如有一个类为:
public class Class1
{
string _Name;
public string Name
{
get { return _Name; }
set { _Name = value; }
}
int Weight;
public int Weight1
{
get { return Weight; }
set { Weight = value; }
}
public Class1 Class1
{
get
{
return This;
}
}
}
可以建立如下类:
public class MyBindlingClass1 : BindingList<Class1>
{
protected override void RemoveItem(int index)
{
//做些事情
base.RemoveItem(index);
}
}
如果将该类嵌入到Class1中,这个子类还可直接调Class1中的内容,利用这种方式,我们可以进行删除后的重新排序,记录删除对象已被保存集合时的处理等等很多事情。
由于对象中的BindingList.ResetBindings()方法会重写列表组件,因此我们可以利用这个特性实现取消输入处理,
如在Class1中添加一个属性Cancel, 当界面层设置为Name的同时设置了Cancel=true时, 在Name.Set方法中,发现该信号,则取消写入_Name, 并刷新列表,则可以实现取消数据操作的功能。
另外,结合BindlingList,还可实现在列表控件实现下拉菜单输入,通过CellClick事件输入等更加方便用户操作的界面功能。
分享到:
相关推荐
扩展BindingList,防止增加、删除项时自动更新界面而不出现“跨线程操作界面控件”异常
将对象列表绑定到XtraGrid控件的DataSource属性上的实例!
BindingList的自定义实现,它为T类型的每个属性提供排序。
TimeLine > 提供了仿IOS的越界回弹效果和左右滑动功能,可自由设置最小滑动距离和是否开启滑动功能 示例:demo.apk Download ...截图 Feature ...SwipeDragLayout使用ViewDragHelper来进行滑动操作,代码少,易理解...
数据绑定-搜索和排序BindingList。
通常我们在进行数据绑定的时候,常用的数据源有DataSet、DataTable、BindingList、还有强类型数据源。今天我们来通过实例了解一下BindingSource组建,分享给大家供大家参考借鉴之用。 BindingSource的两个用途: (1...
一个linq好例子,一个linq好例子一个linq好例子一个linq好例子一个linq好例子一个linq好例子
dategrideview 随时更新,可以在界面下插入一条数据就及时的显示出来.
本文以实例形式讲述了C#应用BindingSource实现数据同步的方法,对C#数据库程序开发来说具有一定的参考借鉴价值。具体实现方法如下: 下面的代码示例演示如何使用 BindingSource 组件,将三个控件(两个文本框控件和...
DevExpress的GridView动态绑定数据集,多线程动态修改UI自动刷新,输出中打印运行状态等
Dev GridView 绑定List、BindingList 、BindingSource
DataGridView控件 绑定列表集合List 设置DataSouce属性为BindingList对象 绑定字典集合Dictionary,V> 借助BindingSource对象设置DataSource
C#在Winform窗体程序中通过DataSet对象将数据绑定到DataGridView中来显示,DataGridView是用来显示数据库中内容较方便的一个数据显示控件,对C#初学者来说,了解其用法显得很重要,也很实用,通过本程序的代码演示,...
BindingList实现提供了过滤器机制,该实现还通过单击列的标题来提供核心排序。 当排序不起作用时,请检查列属性,SortMode必须为“自动”。 当列的数据类型为布尔值时,设计器默认将SortMode设置为“ NotSortable...
本文实例讲述了C#实现3步手动建DataGridView的方法。分享给大家供大家参考。具体如下: DataView dvCmControlInfo = new DataView... //绑DataTable,DataSet,DataView,BindingList dataGridView1.DataMember = "
带搜索的ComboBox就是给ComboBox一个依赖属性的ItemSource,然后通过数据源中是否包含要... bindingList = new ObservableCollection<object>();//数据源绑定List private string editText = "";//编辑文本内
本文实例讲述了c# ... lists = new BindingList(); lists.Add(new Person(2)); this.dataGridView1.DataSource = lists; } 希望本文所述对大家的C#程序设计有所帮助。 您可能感兴趣的文章:C#实现绑定Da