Detecting that text in a DataGridView row/cell has changed before focus leaves the row/cell

Is there any way to detect that the text in a DataGridView row/cell has changed other than using the DataGridView.CellValueChanged event? It appears that this event fires only after the focus has left the cell, after the validating events have fired. Is there an event that I can use like the TextBox.TextChanged event that fires as soon as the text is changed? Thanks for your help.
Paracom_IncAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Expert1701Commented:
Here is a link to the question being asked on MSDN Forums,

  TextChanged event for DataGridViewTextBoxColumn?
  http://forums.microsoft.com/msdn/showpost.aspx?postid=112780&siteid=1

And a sample,

  public partial class Form1 : Form
  {
    EventHandler editingControl_TextChanged;
    Control editingControl;
    int editingColumn;
    int editingRow;

    public Form1()
    {
      InitializeComponent();

      dataGridView1.CellBeginEdit += new DataGridViewCellCancelEventHandler(dataGridView1_CellBeginEdit);
      dataGridView1.EditingControlShowing += new DataGridViewEditingControlShowingEventHandler(dataGridView1_EditingControlShowing);
      dataGridView1.CellEndEdit += new DataGridViewCellEventHandler(dataGridView1_CellEndEdit);
    }

    void dataGridView1_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
    {
      editingColumn = e.ColumnIndex;
      editingRow = e.RowIndex;
    }

    void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
    {
      editingControl_TextChanged = new EventHandler(EditingControl_TextChanged);
      editingControl = e.Control;

      editingControl.TextChanged += editingControl_TextChanged;
    }

    void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
    {
      editingControl.TextChanged -= editingControl_TextChanged;
    }

    void EditingControl_TextChanged(object sender, EventArgs e)
    {
      //editingColumn, editingRow
    }
  }

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Paracom_IncAuthor Commented:
Thanks! I just wanted to know that the user was editing a cell, so the EditingControlShowing event was all I needed.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C#

From novice to tech pro — start learning today.