こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

DataGridViewのカラムに自動で連番

図のようにDataGridViewの2カラム目のコンボボックスに曜日をいれてあります。
DataGridViewは入力すると行が自動で増えていきますが
コンボボックスを選択した段階でカラム1に1,2,3と連番をいれたいのですが
可能でしょうか
環境 windows XP
開発 Microsoft VisualBasic Express 2010


曜日の表示はサイトの例題をはりつけています。

Dim column As New DataGridViewComboBoxColumn()
'ComboBoxのリストに表示する項目を指定する
column.Items.Add("日曜日")
column.Items.Add("月曜日")
column.Items.Add("火曜日")
column.Items.Add("水曜日")
column.Items.Add("木曜日")
column.Items.Add("金曜日")
column.Items.Add("土曜日")
'"Week"列にバインドされているデータを表示する
column.DataPropertyName = "Week"
'"Week"列の代わりにComboBox列を表示する
DataGridView1.Columns.Insert(DataGridView1.Columns("Week").Index, column)
DataGridView1.Columns.Remove("Week")
column.Name = "Week"

投稿日時 - 2012-01-18 15:01:47

QNo.7251814

困ってます

質問者が選んだベストアンサー

DataGridView でコンボボックスを使いたいなら、選択したデーターを取得する事や
新たに追加する事から初めて下さい。

単に連番を表示したいだけなら、行ヘッダーの方に表示した方がスマートですし
コンボボックスを選択した段階でセルに表示したいのなら、どの行のコンボボックスが選択
されたのかを取得する事が先です。
但し、このような仕様は通常しないでしょう。
下記のMSDN のサンプルを動かして仕組み等勉強されてから本当に作りたい物を作成されたら
いかがでしょうか?

MSDN のサンプル(下部の方にサンプルコードが掲載してあります)
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.datagridviewcomboboxeditingcontrol.aspx
上記を動かして理解できないようなら、普通のDataGridView のセルに入力・編集等が
プログラム上からできるように勉強して下さい。

行番号を表示するサンプル
http://dobon.net/vb/dotnet/datagridview/drawrownumber.html

上記と同じサイトにDataGridView関係のサンプルが色々ありますのでそれらも勉強して下さい。

又、WEB 上を[DataGridView combobox]のようなキーワードで検索すればいくらでもサンプルが
見つかりますよ。
その上で質問されるのならピンポイントで解らない部分だけを質問するようにして下さい。
(計算の答えが解りません的な質問をされるとレスがつきにくいかと)

投稿日時 - 2012-01-19 10:44:12

お礼

ありがとうございました。勉強いたします。

投稿日時 - 2012-01-19 14:35:03

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問