2017-07-14 43 views
-1

私は、次のコードを持っている:それは例外を呼び出しDataGridviewにNULLを設定することを許可しますか?

DataTable dt = new DataTable(); 

SQLiteDataReader reader = mycommand.ExecuteReader(); 
dt.Load(reader); 

を:

のSystem.Exception:「制約を有効に失敗しました。 1つ以上の行 に、null以外の、一意の、または外部キー の制約に違反する値が含まれています。

readerには、NULL要素を持つオブジェクトが列に表示されます。 DataGridViewがNULLセル値を受け入れる方法を教えてください。

+0

あなたは私たちに非常に小さな情報を与えるので、我々が試すことができるコードのより大きな部分を見る必要があります。 – MiOnIs

+0

例外によると、問題はDataGridView(WINFORMS)に関連していません。これは、ADO.NET – Bahrom

答えて

2

誠に申し訳ございませんが、あなたの質問に完全に回答するために、より多くの情報が必要ですが、次のスニペットはnull値を処理します。 this MSDN postthis StackOverflow postを確認して、より関連性の高い問題であるかどうかを確認してください。また、問題の一般的な範囲でも役立つthis MSDN referenceを確認してください。それは述べて:

このセルスタイルとDataGridViewのセルがDBNull.Valueの値はnullを持っているか、ユーザーがセルを編集し、CTRL + 0を押すと、DataGridViewコントロールがNULLVALUEプロパティの値を表示する場合。ユーザーがこのセルスタイルのセルを編集してこのプロパティの値を入力するか、CTRL + 0を押すと、コントロールはセル値をDataSourceNullValueプロパティの値に設定し、DataSourceNullValueがDBNull.Valueであり、ValueTypeセルが参照型。この変換は、プログラムでDataGridViewCell.Valueプロパティを設定しても発生しません。

private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { 
    String value = e.Value as string; 
    if ((value != null) && value.Equals(e.CellStyle.DataSourceNullValue)) { 
     e.Value = e.CellStyle.NullValue; 
     e.FormattingApplied = true; 
    } 
} 

いくつかの重い研究を行うようにしてください、人々がより有用であることができるように投稿するときに、あなたの問題で徹底的にしてください。

たとえば、コードを調べて、null値を許可しないクエリのテーブルの問題であると想定することができます。

+0

に関連しています。テーブル内のデータをフォーマットした後ではなく、DataTableソースを埋めるときにエラーが発生します。 – OPV

関連する問題