没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
在做 winform 开发的时候常常会遇到控件绑定数据源来实现双向绑定更新的问题。
根据这么多年的经验现在整理一下供大家参考,有什么写错的地方请指教:
现提供两个简单封装的绑定方法
///<summary>
///将绑定数据源和控件绑定
///</summary>
///<paramname="ctl">控件</param>
///<paramname="propertyName">属性名称</param>
///<paramname="BindingSource">数据源</param>
///<paramname="eldName">绑定字段</param>
publicvoidSetBinding(System.Windows.Forms.Controlctl,stringpropertyName,objectBindingSource,stringeldName)
{
if(ctl.DataBindings[propertyName]!=null)ctl.DataBindings.Remove(ctl.DataBindings[propertyName]);
ctl.DataBindings.Add(propertyName,BindingSource,eldName,true,DataSourceUpdateMode.OnPropertyChanged);
}
///<summary>
///将绑定数据源和控件绑定,默认绑定 Text 属性
///</summary>
///<paramname="ctl">控件</param>
///<paramname="BindingSource">数据源</param>
///<paramname="eldName">绑定字段</param>
publicvoidSetBinding(System.Windows.Forms.Controlctl,objectBindingSource,stringeldName)
{
SetBinding(ctl,"Text",BindingSource,eldName);
}
用上这两个方法调用控件绑定则世界清静了许多。
但是这只是单向绑定而已,如代码指定的,当空间属性值发生变更的时候同步到数据源。
ctl.DataBindings.Add(propertyName,BindingSource,eldName,true,DataSourceUpdateMode.OnPropertyChanged);
这边一个 IsFormattingEnable 设置成了 true,这个属性必须引起重视。当控件的值是 objet 或者
decimal,int 等非 string 类型的时候这个属性有大用途,设置成 false 可能导致控件值丢失。
好了说说双向绑定的,我们用 DataSet,DataTable 等作为 Grid 的数据源的时候 Framework 的内部机制
是有进行双向绑定的。但是对于其他类似于 TextBox 的控件就不是那么的美了,经过大量的测试发现
TextBox 之类的控件用 DataView 作为数据源可实现双向绑定,即当数据源发生变更的时候控件的值会自
动发生变更。有 DataTable.DefaultView 可供调用
资源评论
- wangzhkai2014-05-29同意楼上的说法
- vision_n2013-11-19典型的标题党,没什么参考价值
- tiasys2021-08-26实现了单个简单控件的实现,但没有什么参考价值!我把内容贴出来吧。。。。 在做winform开发的时候常常会遇到控件绑定数据源来实现双向绑定更新的问题。 根据这么多年的经验现在整理一下供大家参考,有什么写错的地方请指教: 现提供两个简单封装的绑定方法 ///
/// 将绑定数据源和控件绑定 /// /// <param name="ctl">控件</param> /// <param name="propertyName">属性名称</param> /// <param name="BindingSource">数据源</param> /// <param name="fieldName">绑定字段</param> public void SetBinding(System.Windows.Forms.Control ctl, string propertyName, object BindingSource, string fieldName) { if (ctl.DataBindings[propertyName] != null) ctl.DataBindings.Remove(ctl
yangyuanlife
- 粉丝: 6
- 资源: 20
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功