怎样获取DataTable的行指针?
DataTable 的RowChanging和RowChanged都是当前行移动新的一行发生,这两个事件都是针对当前行的,而不是新行的,当在指针指向新的一行我想执行一段代码,怎么做? 问题点数:50、回复次数:6Top
1 楼btut2004(养鱼炒股)回复于 2004-09-02 12:03:13 得分 5
关注,学习Top
2 楼mywebcom(我)回复于 2004-09-02 12:19:34 得分 5
行指针?
就是每个行的主键吧!
里面不是有一个DataKey.Top
3 楼jimh(Jimmy)回复于 2004-09-02 12:31:33 得分 5
示例代码:
private static void DataTableRowChanged()
{
DataTable custTable = new DataTable("Customers");
// add columns
custTable.Columns.Add( "id", typeof(int) );
custTable.Columns.Add( "name", typeof(string) );
custTable.Columns.Add( "address", typeof(string) );
// set PrimaryKey
custTable.Columns[ "id" ].Unique = true;
custTable.PrimaryKey = new DataColumn[] { custTable.Columns["id"] };
// add a RowChanged event handler for the table.
custTable.RowChanged += new DataRowChangeEventHandler( Row_Changed );
// add ten rows
for( int id=1; id<=10; id++ )
{
custTable.Rows.Add(
new object[] { id, string.Format("customer{0}", id), string.Format("address{0}", id) } );
}
custTable.AcceptChanges();
// change the name column in all the rows
foreach( DataRow row in custTable.Rows )
{
row["name"] = string.Format( "vip{0}", row["id"] );
}
}
private static void Row_Changed( object sender, DataRowChangeEventArgs e )
{
Console.WriteLine( "Row_Changed Event: name={0}; action={1}",
e.Row["name"], e.Action );
}
DataRowChangeEventArgs 里就包含了你需要的信息Top
4 楼happyno7(夕丁)回复于 2004-09-02 13:05:31 得分 25
在指针指向新的一行执行一段代码
--------------------
好像没有现成的事件可利用
但是,指针指向新的一行,是在程序里用代码控制的,那么每成功操作完指针移动后,就调用一个函数不就行了。
Top
5 楼wangdequan1024(紫夜)回复于 2004-09-02 13:23:01 得分 5
UP,学习Top
6 楼zfhy_me()回复于 2004-09-02 13:58:29 得分 5
dingTop




