打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
CurrencyManager
CurrencyManager 基本
是什么:
Windows 窗体控件绑定到的任何数据源将都具有一个关联的 CurrencyManager 对象。
作用:CurrencyManager 对象跟踪位置,另外监控对该数据源的绑定。
注意:
对于当前绑定到的每个离散数据源,在窗体上都有一个 CurrencyManager 对象。如果窗体上的所有控件都绑定到一个源(例如,如果几个 TextBox 控件绑定到同一数据表),那么它们将共享同一个 CurrencyManager。
但是,有时窗体上的控件将绑定到不同的源。在这种情况下,窗体上有多个 CurrencyManager 对象,每个都跟踪控件正在使用哪个记录(Position属性)或数据元素。(Item_Change事件)

获取:


每个 Windows 窗体都有一个 BindingContext 对象。BindingContext 对象跟踪窗体上的所有 CurrencyManager 对象。因此,任何具有数据绑定控件的 Windows 窗体都至少有一个跟踪一个(或多个)CurrencyManager 对象的 BindingContext 对象,而每个 CurrencyManager 对象又跟踪一个数据源。如果使用容器控件,如 GroupBox、Panel 或 TabControl 来包含数据绑定控件,则可以只为该容器控件及其控件创建一个 BindingContext。这使窗体的各个部分都由它自己的 CurrencyManager 对象来管理。有关为同一数据源创建多个 CurrencyManager 对象的更多详细信息,请参见 BindingContext 构造函数。

例子:


comboBox1.DataSource = DataSet1;
comboBox1.DisplayMember = "Customers.FirstName";
this.BindingContext[dataSet1, "Customers"].Position = 1;

另外,如果用一个DataSet帮定到一个DataView,而控件绑定到DataView而非DataSet。这个时候DataSet和DataView将产生2个不同的CurrencyManager。

 


comboBox1.DataSource = DataSet1;
comboBox1.DisplayMember = "Customers.FirstName";
this.BindingContext[dataSet1, "Customers"].Position = 1;

另外,如果用一个DataSet帮定到一个DataView,而控件绑定到DataView而非DataSet。这个时候DataSet和DataView将产生2个不同的CurrencyManager。

有点乱

方式1:
C# code
comboBox1.DataSource = DataSet1;comboBox1.DisplayMember = "Customers.FirstName";


方式2:
C# code
comboBox2.DataSource = DataSet1.Tables["Customers"];comboBox2.DisplayMember = "FirstName";


这时, comboBox1 和 comboBox2 有各自的 BindingContext, 也就有自己的 CurrencyManager,
虽然数据源都是来自 Dataset1, 但是 Current Location 是独立的,
选择一个不会影响另一个.

但是如果 combobox1 和 combobox2 都使用相同的绑定方式, 那么将使用一个 CurrencyManager(还要看combobox放置的位置是否会导致bindingcontext不同?),
所以选择一个, 另外一个的选中值也跟着改变了.
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
[转]WinForm数据绑定--BindingContext
智能客户端体系结构与设计指南第2章—处理数据
DataTable,DataView,DataRowView,DefaultView与Da...
使用C#开发数据库应用系统
Binding,BindingManagerBase, BindingContext的用法...
Data binding a ListView
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服