2011-12-27 3 views
0

dataGridViewセルの検証に問題があります。 dataGridViewdataGridViewのフォーカスが失われ、検証する前にボタンが押されている)の外にあるボタン(Save dataボタン)を押していない限り、すべて正常に機能します。DataGridViewの検証が機能しません

私が必要とするのは、DataGridViewセルの値が検証されるまで、そのボタン(および他のすべてのコントロール、tabControlを含む)をフォーカスして押すことができないことです。誰でも助けてくれますか?

以下は、このコードでボタンを保存し、検証が終わったとき、それをバック有効コード例

private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) 
    { 
     if (e.ColumnIndex > 0) // I only validate columns 1,2,3.... 
     { 
      try 
      { 
       dataGridView1.CurrentCell.Value = Convert.ToDouble(e.FormattedValue); 
      } 
      catch (Exception ex) 
      { 
       dataGridView1.CancelEdit(); 
       System.Media.SystemSounds.Hand.Play(); 
       e.Cancel = true; 
      } 

     } 
    } 

答えて

0

を無効にしています。プログレスバーまたはステータスバーを表示して、データの後処理が進行中であることを示します。処理がオンの間は常にdatagridviewをフォーカスしたままにしておきます。これが起こっているときにフラグ(boolフラグ)を設定し、マウスの移動やキー入力でそれをtrueに設定すると、それをチェックしてDataGridview自体に焦点を当てることができます。

関連する問題