2011-09-15 14 views
0

私のアプリケーションでDataGridViewを使用していますが、IDの1つの列が含まれています。 ID列を読み取り専用に設定しました。私の質問は、DataGridViewに新しいレコードを追加し、ID列が自動的に1ずつインクリメントする場合、どうすればいいですか?自動インクリメントC#

答えて

2

DataTableで使用され、DataGridViewに表示されるDataColumnには、自動番号付けのプロパティがあります。

このcookbokをご覧ください。

http://www.c-sharpcorner.com/UploadFile/santowebster/AutonumberingDatatable12102008090717AM/AutonumberingDatatable.aspx

たり、データセットに切り替えたい場合は、この:

http://msdn.microsoft.com/en-us/library/yctw654b.aspx

+0

多くの意味合いがありますが、Excelワークシートをdatagridviewに読み込むため、オートナンバー列を作成する必要はありません。または私はすべきですか? – Adrian

+0

あなたは、自動インクリメントの列が必要だと言った。それが終わったのです。それをしたくない場合は、int i = 1;を使用します。 (ループ開始時)i ++(ループの内側)に挿入し、DataGridの最初の列にiを挿入します。 –

0

あなたのDataGridViewは、基礎となるデータに何もしていません。どんなDataSourceを使用していますか? DataTable(またはDataTableのDataSet)には、AutoCrementというDataColumnsを持たせることができます。 DataGridViewの詳細を参照here

+0

さて、バグがあります。新しい行をクリックすると、その行が自動増分されます。しかし、データを入力しない場合は、別の場所をクリックして、新しいレコードを再度クリックしてください。また、番号が追加されます。あなたが最初にクリックするように、それは2になりますが、私は情報を入力しません。レコード1をクリックしてから、新しいレコードをクリックすると、IDは3になります。これを修正するにはどうすればよいですか? – Adrian