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で質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) [オートフィルター]機能について 3 2023/02/04 14:32
- Excel(エクセル) エクセルでセルの日付を和暦表示設定にしたらおかしなことに? 3 2022/05/25 11:47
- Excel(エクセル) エクセルVBAで次の二つを行いたいのですが思うように動きません。どう修正したらよいのでしょうか? 2 2023/04/22 14:55
- Excel(エクセル) 余計なお世話的な「入力規則」?対策は? 2 2023/01/14 12:39
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- Visual Basic(VBA) 【Excel VBA】条件に合った行の表示・非表示を行う方法 3 2023/03/18 12:31
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- Visual Basic(VBA) エクセルVBAで『A列』に新規で数値を入力し『B列』から右方向の空白セルにその値を貼り付ける方法 4 2022/11/05 08:37
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
DataGridViewのチェックボックスのON、OFFの判定方法
C言語・C++・C#
-
C# DataGridViewで複数選択したセルに同じ値を一括で入力するには
C言語・C++・C#
-
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
-
4
VB2005 DataGridView上でクリックを無効にする方法はありますか?
Visual Basic(VBA)
-
5
DataGridViewで入力チェック後、フォーカスをあてたい
Visual Basic(VBA)
-
6
[VB.net] DataGridViewの列ヘッダー複数行表示に伴う不具合?について
Visual Basic(VBA)
-
7
DataGridViewの各セル幅を自由に決め、その幅で固定したい
Visual Basic(VBA)
-
8
DataGridViewでセルクリックイベントを発生させるには
Visual Basic(VBA)
-
9
C#で構造体の配列を持った構造体を使いたいのですが
C言語・C++・C#
-
10
VB2005EE:DataGridViewでチェックボックスを設けるには
Visual Basic(VBA)
-
11
DataGridViewに複数テーブルのデータをセットしたい
Visual Basic(VBA)
-
12
別のフォームで記述している関数を実行するには?C#
C言語・C++・C#
-
13
VB.net データーグリッドビューで余白を無くし
Visual Basic(VBA)
-
14
DataGridViewの桁数制限に関して
Visual Basic(VBA)
-
15
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
16
フルパスから最後のディレクトリ名を取得したい。
Visual Basic(VBA)
-
17
DateTimePickerに値を入れたいのですが…
Visual Basic(VBA)
-
18
コンボボックスの三角を一時的に消す方法。
Visual Basic(VBA)
-
19
データグリッドビューの一番最初の行に列を追加したい
Visual Basic(VBA)
-
20
System.IO.Directory.GetFilesの順番
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSのラベル内データに下線...
-
ウォッチ式の文字数制限について
-
ExcelVBA EnableプロパティがF...
-
複数のコンボボックスの項目の...
-
三菱タッチパネル小数点以下表...
-
ラベルを表示したり非表示にし...
-
Vba テキストボックス文字を右...
-
eclipseのデバッグ中に変数の値...
-
VBAでMultiPageの色の設定方法は?
-
0での割り算
-
C#初心者です。チェックボック...
-
Propertyプロシージャの使い道
-
ラベル内の文字(Caption)を縦...
-
VBSのMsgBoxで文字に色をつけたい
-
VB.NETでラベルの大きさってど...
-
Excel VBA ユーザーフォーム内...
-
メッセージボックスの表示位置...
-
VisualStudioのプロパティが表...
-
リッチテキストの範囲選択がお...
-
パソコンの文字の色の変え方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ウォッチ式の文字数制限について
-
eclipseのデバッグ中に変数の値...
-
Vba テキストボックス文字を右...
-
VisualStudioのプロパティが表...
-
ExcelVBA EnableプロパティがF...
-
ラベル内の文字(Caption)を縦...
-
ラベルを表示したり非表示にし...
-
VB.NETでラベルの大きさってど...
-
ラベルの文字列の長さが変わっ...
-
エクセル 画像のプロパティで縦...
-
ラベルのスクロール(VB)
-
三菱タッチパネル小数点以下表...
-
Excel VBA ユーザーフォーム内...
-
Notepad++のコメントの色を変え...
-
チェックボックスの色について
-
ACCESSのラベル内データに下線...
-
VB6.0でテキストボックスの書式...
-
Labelのプロパティが変更できな...
-
ウムラウト文字の表示方法について
-
VBAでMultiPageの色の設定方法は?
おすすめ情報