問題タブ [checkedlistbox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
16 に答える
100635 参照

c# - アイテムがチェックされた後にトリガーされるCheckedListBoxイベントはどれですか?

新しい状態でCheckedItemsを使用できるように、アイテムがチェックされた後にイベントが必要なCheckedListBoxがあります。

ItemCheckedは、CheckedItemsが更新される前に起動されるため、そのままでは機能しません。

CheckedItemsが更新されたときに通知を受け取るために、どのようなメソッドまたはイベントを使用できますか?

0 投票する
4 に答える
5537 参照

c# - CheckedListBox 内の項目の名前を編集するにはどうすればよいですか?

CheckedListBoxX個のアイテムを持つ があります。これらのアイテムは、実行時にそこに配置されます。これらのアイテムは、 に表示できるレポートを表すと想定されていDataGridViewます。ここで行う必要があるのは、レポート名のすぐ横にある括弧内に各レポートのレコード数を表示することです。あまり長くはありませんが、アイテムの実際の名前を編集しようとしましたが、その方法がわかりませんでした。それで、私はそれを力ずくで強制しました。アイテムを配列に保存し、アイテムをクリアし、配列内の各アイテムにレコード数を追加し、新しいアイテムを作成しました。さて、これは問題を引き起こしました。なぜなら、レポートを生成するたびにアイテムをクリアして再作成するためです。まあ、別のことをするよりもforeachループしてチェック済みのステータスを保存しますが、既存のアイテムのテキストを変更する方法を知っている人はいますCheckedListBoxか?

ここに私が現在持っているコードがあります:

MainForm.Designer.cs で:

そして、それは次のようになります:

代替テキスト

そして、私はそれを次のようにしたいです(ただし、すべてが0になるわけではありません):

代替テキスト

SelectedIndexChanged 関数は次のとおりです。

そして、ここにアイテムをクリアし、レポート数を取得して新しいアイテムを作成するコードがあります。

これを行う簡単な方法があることを教えてください。clbReports.Items を介して foreach ループを実行しようとしましたが、文字列にキャストする必要があるため (CheckBox にキャストしようとするとエラーが発生しました)、値を変更できませんでした。そして、それをCheckBoxにキャストできたとしても、リストが変更されたために列挙が失敗したというエラーが表示される気がします(または、彼らはそれを言います)。どんな助けでも大歓迎です。ありがとう。

編集:レポート X は、実際のレポート名を一般的なものに保つために表示されないようにするためのものであることをご承知おきください。ただし、コードではコピーして貼り付けただけなので、Show All Error Reports と Show All Tagged Records はチェックする必要があるレポートです。

0 投票する
4 に答える
15713 参照

c# - CheckedListBox コントロールのプロパティのような「DisplayMember」と「ValueMember」はありますか? C# の winform

私はこれDataTableを次の構造で持っています:

そして、各行をアイテムとして追加することDataTableで、コントロールに値を表示します。CheckedListBox

しかし、どうすればIDを含めることができますか? CheckedListBox コントロールのプロパティのような「DisplayMember」と「ValueMember」はありますか?

0 投票する
2 に答える
4332 参照

vb6 - VB6.0を使用して、CheckedListBoxで選択したアイテムのアイテムデータを取得するにはどうすればよいですか?

VB6.0を使用して、CheckedListBoxで選択したアイテムのアイテムデータを取得するにはどうすればよいですか?

0 投票する
1 に答える
9194 参照

c# - 同じ選択をクリックしたときにMouseClickを介してCheckedListBoxアイテムのチェック状態を切り替えるときの奇妙な動作

WinFormsCheckedListBoxコントロールには、マウスでクリックしたときの2つのデフォルトの動作があります。

  1. アイテムをチェック/チェック解除するには、アイテムを2回クリックする必要があります。最初のクリックでアイテムを選択し、2回目のクリックでチェック状態を切り替えます。
  2. さらに、同じアイテムを1回クリックすると、そのアイテムのチェック状態が切り替わります。

便利な機能として、ユーザーがワンクリックで選択を切り替えることができるようにする必要がありました。私はこれを達成したので、上記のデフォルトの動作#1がワンクリックで達成されます。問題は、同じ(つまり現在選択されている)アイテムをクリックしたときに動作#2が正しく機能しなくなることです。目的のアイテム間をジャンプする場合は正常に機能しますが、同じアイテムを最大4回クリックする必要があります。

これに対する私の回避策は、ユーザーが同じアイテムを繰り返し選択した場合に、トグルロジックを2回呼び出すことです。だから私の質問に:

  1. これは機能しますが、なぜですか?本当の根本的な問題は何ですか?
  2. これを実現するためのより良い方法はありますか?メソッドを2回呼び出したり、最後の選択を追跡したりせずに、デフォルトの動作#2のように機能させることができますか?

奇妙なことに、コードをデバッグすると、チェックされた状態が変更されたことがわかりますが、2回呼び出されるまでUI側には表示されません。スレッドに関連している可能性があると思いましたが、BeginInvoke使用が必要になる可能性のあるトリガーされる再入可能イベントではありません。

これが私のコードです:

問題を再現するには、コードコメントに記載されている行をコメントアウトし、次の手順に従います。

  1. インデックス2の項目をクリックします-状態がチェック済みに変わります。
  2. 現在のアイテムを選択した状態で、もう一度クリックします。状態は変わりません。期待される:チェックされていない。数回クリックすると、最終的に切り替わります。

読んでくれてありがとう!

0 投票する
2 に答える
1976 参照

c# - C#/ WinForms:文字列/配列からのデータを含むCheckedListBoxアイテムを設定します

チェックリストボックスの項目に文字列/配列からのデータが含まれているかどうかを判断する方法はありますか?

私のテキストボックスには次のものが含まれています。

私のチェックリストボックス(以下が含まれています)

  • ABC
  • DEF
  • GHI
  • JKL

私がやりたいことは次のとおりです。(1)「アクティビティ」を配列に分割します。

(2)テキストボックスに基づいてチェックボックスリスト(cListActivities)で見つかったアイテムを「チェック」してみてください

for (int i = 0; i < frm.clistActivities.Items.Count; i++){

出力:アイテムABCとDEFをチェックする必要があります。

助言がありますか?

0 投票する
2 に答える
2188 参照

c# - チェックボックスのテキスト (checkedlistbox 内) が表示されない

次のコードを使用して、checkedlistbox にチェックボックスを追加しました。

しかし、写真に見られるように、テキストは表示されません。私は何を間違えましたか?ありがとう!

代替テキスト

0 投票する
4 に答える
17014 参照

c# - C#を使用して、チェックされたリストボックスで新しくチェックされたアイテムのテキストを取得するにはどうすればよいですか

私は ItemCheckEventArgs を使用しており、そこからインデックス値を取得できますが、この値から、チェックされたテキストの内容を調べる方法がわかりません。

0 投票する
3 に答える
150 参照

c# - チェックリストボックスの挿入されたオブジェクトに名前を挿入するのが難しい

私はC#の初心者で、オブジェクトをに挿入しようとしているCheckedListBoxので、この挿入されたアイテムにはチェックリスト内にタイトルがあります(私のオブジェクトには、CheckedListBoxに表示したい文字列フィールドが含まれています)。たとえば、これは私のクラスです。

私のクラスには、彼女の中にtostringオーバーライドも含まれています(私が表示したいものではありません)

よろしくお願いします。

0 投票する
1 に答える
652 参照

c# - コンテキストメニューストリップをチェックボックスリストに動的にアタッチする

ビルドされたコンテキスト メニュー ストリップを CheckBoxList に挿入するオブジェクトにアタッチしようとしています。私がやろうとしているのは、contextMenuStrip を、checkboxList 内に作成されている新しいチェックボックスにアタッチすることです。メニューが表示されるマウスの例:

リスト内に、オブジェクトを含む新しいチェックボックスがあります。contextMenuStrip をそれにアタッチするにはどうすればよいですか?

よろしくお願いします。