
C# DataGridView特定セルの入力フォーム変更について
C# DataGridViewについての質問です。
DataGridViewで1列目のコンボボックスを選択した値によって、その行のみ
2列目の入力フォームを変更したいのですが、その様なことは可能でしょうか?
例.1行目1列目コンボボックス「a」選択時、1行目2列目コンボボックス表示
2行目1列目コンボボックス「b」選択時、2行目2列目テキストボックス表示
3行目1列目コンボボックス「c」選択時、3行目2列目チェックボックス表示
列全体の入力フォームを変更する処理なら分かるのですが、特定のセルのみ変更する
方法が分かりません。
もし可能であれば実現方法も教えて頂けると非常に助かります。
宜しくお願いします。
No.2ベストアンサー
- 回答日時:
なるほど。
そういうことだったのですねw私頭が弱いので読解力っていうのが無いみたいで・・・ご迷惑おかけしました。
FormにButtonを貼り付けてクリックイベントで下記コードを実行してみてください。
private void button1_Click(object sender, EventArgs e)
{
DataGridView dgv = new DataGridView();
DataGridViewCheckBoxCell checkCell = new DataGridViewCheckBoxCell();
DataGridViewComboBoxCell comboCell = new DataGridViewComboBoxCell();
DataGridViewTextBoxCell textCell = new DataGridViewTextBoxCell();
dgv.AllowUserToAddRows = false;
dgv.EditMode = DataGridViewEditMode.EditOnEnter;
dgv.RowCount = 3;
dgv.ColumnCount = 1;
dgv.Dock = DockStyle.Fill;
Controls.Add(dgv);
//CheckBox
checkCell.Value = true;
dgv[0, 0] = checkCell;
//ComboBox
comboCell.DisplayMember = "test";
dgv[0, 1] = comboCell;
//TextBox
textCell.Value = "";
dgv[0, 2] = textCell;
}
DataGridViewは必要ありません。あくまでテスト用データなので別プロジェクトを作成して実行してください。これを改良すれば目的のことも出来ると思います。
No.1
- 回答日時:
可能だと思います。
DataGridViewComboBoxColumn.DisplayStyleForCurrentCellOnlyプロパティをTrueにしてください。
これでいけるとは思いますが・・・
この回答への補足
回答ありがとうございます。
残念ながらrk_lesさんが仰った方法は既に試しており、その方法では
条件を満たせないことが分かりました。
説明が不足しており、申し訳ありません。
確かに特定のセルの入力フォームの変更は可能なのですが、それだと
同列の他全セルの入力フォームも自動的に変更されてしまいます。
同列の他セルに影響を与えず、あくまで各行の入力フォームを個別で自由に
設定したいのです。
例.
| 1列目 | 2列目
|------------
| a | テキストボックス
| b | コンボボックス
| c | チェックボックス
| a | テキストボックス
※1行目1列目のコンボボックス値を「b」に変更した場合、1行目2列目はコンボ
ボックスとなりますが、同列他セルの入力フォームはそのままです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba テキストボックス文字を右...
-
eclipseのデバッグ中に変数の値...
-
ウォッチ式の文字数制限について
-
VBAでMultiPageの色の設定方法は?
-
VBで横倍角/縦倍角を表示したい...
-
MATLABのグラフで軸目盛りのフ...
-
ラベルを表示したり非表示にし...
-
VBSのMsgBoxで文字に色をつけたい
-
VisualStudioのプロパティが表...
-
実行ファイルのアイコン
-
ラベルの文字列の長さが変わっ...
-
C# DataGridView特定セルの入力...
-
三菱タッチパネル小数点以下表...
-
VBのリッチテキストについて
-
ラベルのスクロール(VB)
-
チェックボックスの色について
-
ListViewでの行全体の選択
-
ExcelVBA EnableプロパティがF...
-
ウムラウト文字の表示方法について
-
VB.NET(2005) コンソールアプリ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ウォッチ式の文字数制限について
-
eclipseのデバッグ中に変数の値...
-
ラベルの文字列の長さが変わっ...
-
ExcelVBA EnableプロパティがF...
-
Vba テキストボックス文字を右...
-
三菱タッチパネル小数点以下表...
-
ラベルを表示したり非表示にし...
-
VB.NETでラベルの大きさってど...
-
VisualStudioのプロパティが表...
-
ラベル内の文字(Caption)を縦...
-
MATLABのグラフで軸目盛りのフ...
-
ラベルのスクロール(VB)
-
ACCESSのラベル内データに下線...
-
スプレッドシートの列名変更の...
-
(Excel 2003) マクロでワー...
-
Excel VBA ユーザーフォーム内...
-
Notepad++のコメントの色を変え...
-
C#初心者です。チェックボック...
-
Labelのプロパティが変更できな...
-
Acでテキストボックス上に罫線...
おすすめ情報