Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

DataTable.ColumnChanging Event

Occurs when a value is being changed for the specified DataColumn in a DataRow.

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

public event DataColumnChangeEventHandler ColumnChanging

For more information, see Handling DataTable Events.

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

.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
Show:
© 2015 Microsoft