2017-07-14 1 views
0

Visual Studio 2017/VB/Winformsを使用していて、DataGridViewにはBindingSourceを使用してAccessデータベースに接続しています。新しいレコードが作成されたときにDataGridView列に値を追加する

これはうまくいきますが、新しいレコードが追加されたときにユーザーから隠されているフィールドまたは列の1つに値をプログラムで追加する必要があります。私はこれが簡単な質問だとはっきりと確信していますが、私は何時間イベントで正しいイベントを見つけようと努力しています。それはDataGridViewイベントですか、それともBindingSourceイベントですか?ここで

は、私が仕事をするだろうと思ったコードですが、それはまだ私に

Private Sub StoresDataGridView_DefaultValuesNeeded(sender As Object, e As DataGridViewRowEventArgs) _ 
       Handles StoresDataGridView.DefaultValuesNeeded 
     e.Row.Cells("colProjectID").Value = 1 
    End Sub 

が、それは何か、私は確信して、私はのように、再び、これを理解助けてくださいPROJECTIDはnullにすることはできませんというエラーを与えます本当にシンプルな私は行方不明です。私もそのイベントでブレークポイントを設定しようとしたが、それは発射されていないようだ。

フォームのLoadイベントにこれを追加しようとしましたが、フォームがロードされてもエラーは発生しませんでしたが、新しいレコードを追加しようとすると同じエラーが発生します。

StoresDataGridView.Columns("colProjectID").DefaultCellStyle.NullValue = 1

+0

それはグリッドがあったのでStoresDataGridView_DefaultValuesNeeded'が、それだけで波平焼成正しいイベントだった '、判明したように' AllowUserToAddRows'ました'False'に設定 – Joe

答えて

0

次のようにグリッドのRowValidatingイベントを使用します。

StoresDataGridView.Rows(StoresDataGridView.Rows.Count - 1).Cells("colProjectID").Value = 1

関連する問題