private void dgvWorkOrder_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
if (e.ColumnIndex == 0 && e.RowIndex == dgvWorkOrder.RowCount - 1)
{
try
{
string check = dgvWorkOrder.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
}
catch (Exception ex)
{
MessageBox.Show("Please input a valid entry.", "Empty");
e.Cancel = true;
}
}
if (e.ColumnIndex == 2 && e.RowIndex == dgvWorkOrder.RowCount - 1) ;
{
try
{
decimal check = Convert.ToDecimal(dgvWorkOrder.Rows[e.RowIndex].Cells[e.ColumnIndex].Value);
if (check == 0)
{
throw new Exception();
}
}
catch (Exception ex)
{
MessageBox.Show("Please input a valid entry.");
e.Cancel = true;
}
}
}
隨着上面的代碼,我試圖做一個離開事件,檢查用戶是否輸入任何東西。如果他們不這樣做,我希望它們不會離開那個單元格,直到他們完成,停止其他任何可以完全退出該程序的單元。C#防止DataGridView離開
根據要求更新。
這有效,但是,它似乎落後了一步,我猜。我有另一個在允許它們繼續前檢查是否有小數。但是,我可以輸入狗,它會讓我第一次離開牢房,但不是第二次。 – user3169698
@ user3169698:發佈在事件處理程序中運行的代碼,作爲對您問題的編輯。 –
更新了代碼。 – user3169698