DataTable.ColumnChanged Event

Occurs after a value has been changed for the specified DataColumn in a DataRow.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

public event DataColumnChangeEventHandler ColumnChanged

For more information, see Handling DataTable Events.

    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]);
    }

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft