DataTable.RowChanged 事件
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
成功變更 DataRow 後發生。
public:
event System::Data::DataRowChangeEventHandler ^ RowChanged;
public event System.Data.DataRowChangeEventHandler? RowChanged;
public event System.Data.DataRowChangeEventHandler RowChanged;
[System.Data.DataSysDescription("DataTableRowChangedDescr")]
public event System.Data.DataRowChangeEventHandler RowChanged;
member this.RowChanged : System.Data.DataRowChangeEventHandler
[<System.Data.DataSysDescription("DataTableRowChangedDescr")>]
member this.RowChanged : System.Data.DataRowChangeEventHandler
Public Custom Event RowChanged As DataRowChangeEventHandler
事件類型
- 屬性
範例
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);
}
Private Sub DataTableRowChanged()
Dim custTable As New DataTable("Customers")
' add columns
custTable.Columns.Add("id", Type.GetType("System.Int32"))
custTable.Columns.Add("name", Type.GetType("System.String"))
custTable.Columns.Add("address", Type.GetType("System.String"))
' set PrimaryKey
custTable.Columns("id").Unique = True
custTable.PrimaryKey = New DataColumn() {custTable.Columns("id")}
' add a RowChanged event handler for the table.
AddHandler custTable.RowChanged, _
New DataRowChangeEventHandler(AddressOf Row_Changed)
' add ten rows
Dim id As Integer
For id = 1 To 10
custTable.Rows.Add( _
New Object() {id, String.Format("customer{0}", id), _
String.Format("address{0}", id)})
Next
custTable.AcceptChanges()
' change the name column in all the rows
Dim row As DataRow
For Each row In custTable.Rows
row("name") = String.Format("vip{0}", row("id"))
Next
End Sub
Private Sub Row_Changed(ByVal sender As Object, _
ByVal e As DataRowChangeEventArgs)
Console.WriteLine("Row_Changed Event: name={0}; action={1}", _
e.Row("name"), e.Action)
End Sub
備註
如需詳細資訊,請參閱 處理 DataTable 事件。