首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

CurrencyManager.Current有关问题

2012-03-23 
CurrencyManager.Current问题C# codeCurrencyManager cm this.BindingContext[dataset, tablename] as

CurrencyManager.Current问题

C# code
CurrencyManager cm = this.BindingContext[dataset, "tablename"] as CurrencyManager;                    DataRowView drv = cm.Current as DataRowView;                    if (drv != null)                    {                        drv.Delete();                    }

如果drv是datarow类型的那么就取不到当前行 cm.Current 是obj类型的为什么强制转换成datarow就不行 转换成DataRowView 就好用呢

求解

[解决办法]
msdn 上写的很清楚

使用 BindingManagerBase,可以对 Windows 窗体上绑定到相同数据源的数据绑定控件进行同步。(有关将控件简单绑定到数据源的更多信息,请参见 Binding 类。)例如,假定窗体包含两个绑定到相同数据源的不同列的 TextBox 控件。数据源可能是一个包含客户姓名的 DataTable,其中的列可能包含名字和姓氏。这两个控件必须同步以便一起显示同一客户的正确姓名。从 BindingManagerBase 类继承的 CurrencyManager 通过维护指向数据源中当前项的指针来完成此同步。TextBox 控件被绑定到当前项,因此它们显示同一行的信息。在当前项更改时,CurrencyManager 通知所有绑定控件,以便它们能够刷新它们的数据。此外,可以设置 Position 属性来指定控件所指向的 DataTable 中的行。若要确定数据源中存在的行数,请使用 Count 属性。

热点排行