C#でCombBoxを使い、ドロップダウンリスト(追加リスト)を追加していくプログラムを作成しています。
追加と削除ボタンを用意し、コンボボックスで入力したものをドロップダウンしたときに追加していき、削除ボタンでは追加したものを消します。
そこまではできたのですが、その後の問題がわかりません。
①既に追加されているものは追加できないよう、追加のボタンを押せないようにする。
②追加のリストが10個以上になったら追加ボタンが押せなくなるようにする。
③追加リストにないものは削除ボタンを押せないようにする。
④追加リストに一つも追加されていない場合削除ボタンを押せないようにする。
以上の4つのプログラムをどう作成したらよいかわかりません。
どのイベントを使えばいいかもわからない状態です。
一つでも分かる方教えていただきたいです!!
No.1
- 回答日時:
>>①既に追加されているものは追加できないよう、追加のボタンを押せないようにする。
ボタンを押せないようにする処理は、極めて一般的なものです。それと同じ方法を実行すればいいのでは?
②追加のリストが10個以上になったら追加ボタンが押せなくなるようにする。
上記と同様です。
>>③追加リストにないものは削除ボタンを押せないようにする。
追加リストにないものを選んだときに、上記と同様な処理をすればいいのでは?
>>④追加リストに一つも追加されていない場合削除ボタンを押せないようにする。
これも同様では?
No.2ベストアンサー
- 回答日時:
イベントについては自信なしですが、以下のようになるかと・・・
----------------------------------------------
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
//ボタン設定
set_buttons();
}
private void comboBox1_TextChanged(object sender, EventArgs e)
{
//ボタン設定
set_buttons();
}
//ボタン設定処理(自前の処理)
private void set_buttons()
{
if (comboBox1.Items.Contains(comboBox1.Text) == true)
{
button1.Enabled = false; //追加ボタン
button2.Enabled = true; //削除ボタン
}
else
{
button1.Enabled = true;
button2.Enabled = false;
}
if (comboBox1.Items.Count >= 10)
{
button1.Enabled = false; //追加ボタン
}
if (comboBox1.Items.Count == 0)
{
button2.Enabled = false; //削除ボタン
}
}
//追加ボタン
private void button1_Click(object sender, EventArgs e)
{
if (System.Text.RegularExpressions.Regex.IsMatch( comboBox1.Text,@"^\s*$"))
{
return;
}
comboBox1.Items.Add(comboBox1.Text);
comboBox1.Text = "";
}
//削除ボタン
private void button2_Click(object sender, EventArgs e)
{
comboBox1.Items.Remove(comboBox1.Text);
comboBox1.Text = "";
}
----------------------------------------------------
comboBox1_SelectedIndexChanged
comboBox1_TextChanged
で、コンボボックスのテキストの変更を拾っています。
追加、削除ボタンクリックで、リストの追加・削除を行いますが、
その後、Textをクリアしています。(comboBox1_TextChangedを拾う為の保険です)
追加ボタンで、空白が登録できてしまうので、空白の場合は、追加しないようにしています。
わざわざ長いプログラムを作成していただき本当にありがとうございました!
分かりやすく、私もプログラムが作成することができました!
こんなはやく回答してくださり、正確で尊敬します(;ω;)
お時間さいてくださりありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
- その他(スマホアプリ・スマホゲーム) ゼンリー 友達追加について 1 2022/09/11 23:14
- 画像編集・動画編集・音楽編集 Windowsに付属しているビデオエディター。BGMを追加する方法は? 1 2022/06/26 08:54
- Visual Basic(VBA) VB.net フォーム 親子 1 2022/07/04 19:00
- Android(アンドロイド) タスクやTodoのandroidアプリで、リスト上でタスクの登録日時を表示できるものはありませんか? 2 2023/07/17 17:54
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- オンラインゲーム Macの「探す」アプリに持ち物が追加できない 3 2023/08/02 14:45
- LINE LINE で友だちをブロックしたあと、削除した場合について。 ①削除した友だちから、メッセージがきた 1 2023/05/07 22:37
- LINE LINEで友達自動追加により追加された友達側の登録をなかった事にできますか? 1 2022/08/02 19:49
- その他(コンピューター・テクノロジー) テストケースの問題 2 2023/08/14 10:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
フォームの再読み込み
-
.NET(VB)でボタンの連打を防止...
-
VBAで多数のプログラムを一つの...
-
VBでのエラー音の消し方
-
ダウンロードダイアログをVB...
-
[Excel VBA]コマンドボタンの入...
-
C#で動的に作ったtextboxを消す。
-
セルをマクロのボタンにしたい。
-
C#プログラムで、ボタンをショ...
-
VB.net でトグルボタンを実現し...
-
ボタンの状態
-
Access VBA でデータペーストを...
-
vb.net タイマーに引数を渡す
-
エクセルVBAでユーザーフォーム...
-
コマンドボタンやイメージにマ...
-
他のアプリケーションとの連携
-
excel シート上のボタンが動かない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
フォームの再読み込み
-
ユーザーフォームに別シートか...
-
VBA CommandButtonの文字ずれ
-
セルをマクロのボタンにしたい。
-
コマンドボタンやイメージにマ...
-
Excel VBA Application.caller...
-
VBAのボタンの位置が変わって困...
-
Access VBA でデータペーストを...
-
プロシージャからイベントをコ...
-
他のアプリケーションとの連携
-
閉じると「+」になり開くと「-...
-
C#で動的に作ったtextboxを消す。
-
ボタンをマウスで押し続けたと...
-
VBA でのボタンの移動について
-
ボタン
-
CommandButtonのCaptionを変化...
-
TextBoxでEnterキーを押すと、...
-
VB.net でトグルボタンを実現し...
おすすめ情報