DataTable.ColumnChanged Olay
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
içinde belirtilen DataColumnDataRowiçin bir değer değiştirildikten sonra gerçekleşir.
public:
event System::Data::DataColumnChangeEventHandler ^ ColumnChanged;
public event System.Data.DataColumnChangeEventHandler? ColumnChanged;
public event System.Data.DataColumnChangeEventHandler ColumnChanged;
[System.Data.DataSysDescription("DataTableColumnChangedDescr")]
public event System.Data.DataColumnChangeEventHandler ColumnChanged;
member this.ColumnChanged : System.Data.DataColumnChangeEventHandler
[<System.Data.DataSysDescription("DataTableColumnChangedDescr")>]
member this.ColumnChanged : System.Data.DataColumnChangeEventHandler
Public Custom Event ColumnChanged As DataColumnChangeEventHandler
Olay Türü
- Öznitelikler
Örnekler
private static void DataTableColumnChanged()
{
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 ColumnChanged event handler for the table.
custTable.ColumnChanged += new
DataColumnChangeEventHandler(Column_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 Column_Changed(object sender, DataColumnChangeEventArgs e )
{
Console.WriteLine("Column_Changed Event: name={0}; Column={1}; original name={2}",
e.Row["name"], e.Column.ColumnName, e.Row["name", DataRowVersion.Original]);
}
Private Shared Sub DataTableColumnChanged()
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 ColumnChanged event handler for the table.
AddHandler custTable.ColumnChanged, _
New DataColumnChangeEventHandler(AddressOf Column_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 Shared Sub Column_Changed(sender As Object, _
e As DataColumnChangeEventArgs)
Console.WriteLine("Column_Changed Event: name={0}; Column={1}; original name={2}", _
e.Row("name"), e.Column.ColumnName, e.Row("name", DataRowVersion.Original))
End Sub
Açıklamalar
Daha fazla bilgi için bkz. DataTable Olaylarını İşleme.
Şunlara uygulanır
Ayrıca bkz.
GitHub'da bizimle işbirliği yapın
Bu içeriğin kaynağı GitHub'da bulunabilir; burada ayrıca sorunları ve çekme isteklerini oluşturup gözden geçirebilirsiniz. Daha fazla bilgi için katkıda bulunan kılavuzumuzu inceleyin.