DataTable.ColumnChanging Gebeurtenis
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Treedt op wanneer een waarde wordt gewijzigd voor de opgegeven DataColumn in een DataRow.
public:
event System::Data::DataColumnChangeEventHandler ^ ColumnChanging;
[System.Data.DataSysDescription("DataTableColumnChangingDescr")]
public event System.Data.DataColumnChangeEventHandler ColumnChanging;
public event System.Data.DataColumnChangeEventHandler ColumnChanging;
[<System.Data.DataSysDescription("DataTableColumnChangingDescr")>]
member this.ColumnChanging : System.Data.DataColumnChangeEventHandler
member this.ColumnChanging : System.Data.DataColumnChangeEventHandler
Public Custom Event ColumnChanging As DataColumnChangeEventHandler
Gebeurtenistype
- Kenmerken
Voorbeelden
private static void DataTableColumnChanging()
{
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 ColumnChanging event handler for the table.
custTable.ColumnChanging += new
DataColumnChangeEventHandler(Column_Changing );
// 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 Column_Changing(object sender,
DataColumnChangeEventArgs e )
{
Console.WriteLine(
"Column_Changing Event: name={0}; Column={1}; proposed name={2}",
e.Row["name"], e.Column.ColumnName, e.ProposedValue );
}
Private Shared Sub DataTableColumnChanging()
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 ColumnChanging event handler for the table.
AddHandler custTable.ColumnChanging, New _
DataColumnChangeEventHandler(AddressOf Column_Changing )
' 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 Shared Sub Column_Changing(sender As Object, _
e As DataColumnChangeEventArgs)
Console.WriteLine( _
"Column_Changing Event: name={0}; Column={1}; proposed name={2}", _
e.Row("name"), e.Column.ColumnName, e.ProposedValue)
End Sub
Opmerkingen
Zie DataTable-gebeurtenissen verwerken voor meer informatie.