2015-10-27 58 views
0

您好,我正在編寫一個應用程序,要求用戶輸入名字,姓氏和電話號碼。這些值不能爲空。編輯時在DataGridView單元格中強制非空值

我試圖完成的是驗證數據,如果值爲空以選擇有問題的單元格並強制它們進行編輯,或者它們將一遍又一遍地得到相同的錯誤。

數據得到適當檢查,但單元格沒有被重新選擇並開始編輯。它只是選擇驗證後點擊的任何單元格。這是我的代碼。

private void datagridCustomers_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) 
{ 
    curCell = datagridCustomers.Rows[e.RowIndex].Cells[e.ColumnIndex]; 

    if (e.ColumnIndex == 0) 
    { 
     if (e.FormattedValue.ToString() == string.Empty) 
     { 
      MessageBox.Show("Test"); 
      datagridCustomers.CurrentCell = curCell; 
      curCell.Selected = true; 
      datagridCustomers.BeginEdit(true); 
     } 
    } 
} 

回答

1

設置事件的Cancel財產應該做的伎倆:它不會允許離開牢房

private void datagridCustomers_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) 
{ 
    if (e.ColumnIndex == 0 && e.FormattedValue.ToString() == string.Empty)  
     e.Cancel = true;  
} 
相關問題