0

データセットにバインドされた datagridview があります。私の datagridview の目標は、ユーザーが負の整数を入力して datagridviewcell を空白のままにしないようにすることです。入力が無効であることをユーザーに伝えるために、ある種のエラーメッセージまたはメッセージボックスが必要です。これが私がこれまでに持っているものです。うまくいけば、それがあなたの出発点になるでしょう。ご協力やご提案をいただければ幸いです。

Private Sub DataGridView1_DataError(ByVal sender As Object, _
ByVal e As DataGridViewDataErrorEventArgs) _
Handles DataGridView1.DataError

    If  CInt(e.Exception.Message, "Input string was not in a correct format.") < 0 Then
        MessageBox.Show("Please Enter a positive Value")
        'This will change the number back to original
        DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = " "
    End If
4

1 に答える 1

1

DataGridView の CellValidatingイベントのドキュメントをご覧ください: http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.cellvalidating.aspx

このイベントのハンドラーをアタッチすると、新しい値が次のようになっているかどうかを確認できます。

  1. 空の
  2. 数ではない
  3. 負の数

(この順序で) これらの条件のいずれかが true の場合、変更をキャンセルします。

編集

これが偶然かどうかはわかりませんが、ドキュメントからサンプル コードをコピーして貼り付けることができます。それはあなたがやろうとしていることを正確に行います。

于 2013-06-23T15:48:50.673 に答える