問題タブ [listboxitems]

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 投票する
1 に答える
311 参照

c# - このリストボックス項目の削除コードが失敗するのはなぜですか?

Windows CE アプリに次のコードがあります。

「 System.Collections.ArrayList.ArrayListEnumeratorSimple.MoveNext() での無効な操作の例外...」でクラッシュします。

「通常の」Windowsフォームアプリでまったく同じコードを試してみましたが、完全に機能します。これが Windows CE がこの方法で処理できない場合、どうすればListbox から項目を削除できますか?

アップデート

これは、動作する "VS 2013 コード" (ターゲット フレームワーク == .NET Framework 4.5.1、プラットフォーム ターゲット == 任意の CPU) です (リスト ボックスの "blaINV" 項目は削除されています)。

そのフォームの using ステートメント (これは、あらゆる種類のものをテストする「サンドボックス」フォームです):

「VS 2008」コードが続きます。

ただし、最初に、このプロジェクトのターゲット フレームワークは .NET 3.5 である必要がありますが、[プロジェクト] > [プロパティ] > [アプリケーション] タブで [ターゲット フレームワーク:] がグレー表示されていることに注意してください。[プロジェクト] > [ターゲット プラットフォームの変更] を選択した場合、「現在のプラットフォーム:」== Windows CE)

しかし、[プロジェクト] > [プロパティ] > [ビルド] タブに移動すると、構成が「アクティブ (デバッグ)」に設定され、プラットフォームが「アクティブ (任意の CPU)」に設定され、プラットフォーム ターゲットが「任意の CPU」に設定され、これが唯一のオプションになります。ドロップダウンで。

[デバイス] タブ ([プロジェクト] > [プロパティ] > [デバイス]) で、ターゲット デバイスが "Pocket PC 2003 SE Emulator" に設定されていますが、実際には使用していません。テストが必要なときは、.exe をハンドヘルド デバイスにコピーするだけです。

とにかく、ここにコードがあります(失敗します):

ご覧のとおり、検索する「偽の」文字列が作業コードで提供されていることを除いて、同じです。実際のリストボックスには、「listboxVal」に一致する値が含まれています。それでも、削除されないだけでなく、上記の例外が発生します。

非稼働フォームの using ステートメントは次のとおりです。

更新 2

万が一、違いが生じるかどうかを確認するために、名前空間の後を使用して名前空間の上に移動しました。そうではありませんでした。

更新 3

コードに catch ブロックを追加しました。

...しかし、メッセージ ボックスが表示されません。前の例外が表示され、それを閉じるとアプリがクラッシュします。これまでデバイスから聞いたことのない薄い金属の「ビン」という音でさえ。

更新 4

さて、これの真相を探るために、コードに大量の MessageBox.Show() を散りばめました。

これは次のように呼ばれます。

ご覧のとおり、UpdateGUIAfterTableSend() が呼び出された後は何も起こりません。これは、[送信] > [インベントリ] を選択し、この一連のイベントを開始する前に表示されるものです。

ここに画像の説明を入力

...そして、これはクラッシュの直前に私が見たものです (listboxitem 削除コードが実際に機能していることがわかりました):

ここに画像の説明を入力

最後に「作成した」MessageBox.Show() を閉じると、前述のようにクラッシュします。どうして?!?!?その後は何もない!?

更新 5

だから私はメソッドにcatchブロックを追加しました(SendInventories())が実際には犯人のようです:

...そして私はこれを見ます:

ここに画像の説明を入力

ただし、このように例外をキャッチすることで、アプリはクラッシュしません。そして、それは無害に思えます-私が達成したいことは達成されました. したがって、この例外の内外については確かに興味がありますが (しゃれは意図していません)、おそらく私はそれを抑制/飲み込みます...

更新 6

したがって、catch ブロックを次のように変更すると:

...問題なく動作します(例外は見られず、両方のリストボックスが意図したとおりに更新されます)。気まぐれな Windows CE の世界の気まぐれのせいにしようと思います。

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

c# - C#リストボックスにオブジェクトを追加して特定のテキストで表示する方法

私はこれをデルファイで行っていました。つまり、オブジェクトとアイテムを同時にリストボックスに追加していました。

私は Mike から HIDLibrary を訴えています。複数のデバイスがあり、それぞれに異なるシリアル番号があり、リストボックスに追加する必要があります。問題は、オブジェクトをリストボックスに追加できるかどうかわからないことです。デルファイで行っていたように、C# で別のテキストで表示します。デフォルトのテキストは、HidDevice オブジェクトをリストボックスに追加するとデバイスのパスを示しますが、serialNo のみを表示したいのです。シリアルNoを抽出します。各有効な HID デバイスの 1 行で、その serialNo を追加した結果のインデックスを使用して、AllValidHIDDevices に挿入します。リストボックスに追加して、各 HID デバイスがそのシリアル番号にバインドされるようにします。シリアル番号をクリックすると、実際にはそのシリアル番号のソフトウェア スナップショットを使用して HID デバイスを取得しています。

アイテムが追加されたら、それをクリックして選択し、操作します。

0 投票する
0 に答える
296 参照

ms-access - 「前へ」または「次へ」ボタンをクリックしてもリストボックスに反映されない

2 つの列 (ID Autoincrement、Name) のみを持つテーブルに入力するための 1 つのテキスト フィールドを持つフォームがあります。

上記のテーブルのレコードを含むリストボックスがあります。リストボックスの 1 つの行をクリックすると、テキスト フィールドに適切な名前の値が入力されます。しかし、作成された [次へ] ボタンと [前へ] ボタンを使用して行を反復すると、リストボックスが更新されません。実際、マウスをクリックすると、開始時に選択した行が常に選択されます。

[次へ] ボタンと [前へ] ボタンをクリックしたときに、リストボックスで選択した項目を更新したい。

実際、マウス クリックで行を選択するのではなく、ボタンで行を移動すると、テキスト フィールドの値がリスト ボックスで選択した項目と異なる場合があります。

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

c# - Compact Framework で ListBox の選択項目をループするにはどうすればよいですか?

ここから次のコードを適応させました

...しかし、悲しいかな、SelectedItems メンバーは私には利用できないようです: " 「System.Windows.Forms.ListBox」には「SelectedItems」の定義が含まれておらず、「System. Windows.Forms.ListBox' が見つかりました (using ディレクティブまたはアセンブリ参照がありませんか?) "

別の提案は次のとおりです。

...しかし、ListItem も利用できません。

同じことを達成するための回避策は何ですか?

アップデート

私ができることは少なくとも2つあります(やや不器用です):

しかし、私はまだそれらよりも簡単な方法がなければならないと考えています.

更新 2

私はこれを行うことができます(コンパイルされます):

...しかし、選択されたアイテムのみに作用するという問題が残っています。

更新 3

CF-Whisperer が、リストボックスの複数選択は CF (楔形文字) の暗く霧の多い迷路の世界では不可能だと言ったので、コードを次のように単純化しました。

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

c# - C#WinFormsでリストボックスを自動スクロールする方法はありますか

私はプログラムを書いて、大きなモニターのいくつかのリストボックスに数字のリストを表示します.私の質問は、ボックス内のすべてのデータを表示するためにリストボックスを自動スクロールする方法はありますか?

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

vb.net - Visual Studio 2012 vbでWindows Media Playerを使用してリストボックスアイテムを再生する方法

ユーザーが選択できる 1,189 個のリストボックス項目があります。クリックしたリストボックス項目ごとにオーディオファイルを再生したい。私はできることを知っています:

と:

リストボックス項目ごとに非表示のWindows Media Playerを使用したいのですが、クリックすることを選択したリストボックス項目ごとにコントロールの再生、一時停止、停止、およびボリュームのみを使用できます。

どの項目をクリックしてもプレーヤー コントロールがポップアップできるようにする単一のコードを記述する方法はありますか、それとも 1,189 個のリストボックス項目すべてに対して Windows Media Player コードを個別に作成する必要がありますか?

1,189 個のリストボックス項目から選択できる理由は、各リストボックス項目が聖書の章を表しているからです。ジェネシスには 50 のチャプターがあります。つまり、ジェネシスだけで 50 の mp3 または wav ファイルがあります。詩篇には 150 のチャプターがあります。つまり、詩篇には 150 の mp3 または wav ファイルがあります。可能であれば、ほんの数行のコードでコーディング作業の一部を削減することを考えていましたか? ご返信ありがとうございます。

聖書の各本にボタンがあることを明確にする必要があります。つまり、39 の旧約聖書と 27 の新約聖書のボタンがあり、各ボタンにはその本の特定の章を含むリストボックスが含まれています。ここに私のコードがあり、ここに私が始めたことがあります:

ファイルを再生するために、私はこれを始めました:

それで、コントロールだけでwmpを手伝ってくれることを願っています-一時停止停止を再生します。各リストボックス項目で機能するプレーヤーは 1 つだけです。

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

javascript - リストボックスの選択したインデックスを更新しています

Google スプレッドシートと Google フォームの間で読み書きを行う Google スクリプトがあります。基本的には、材料データベースにアクセスするためのフォームです。

フォームに最初にアクセスすると、すべてのフィールドが空白で、マテリアル ID (CW_ID) の入力された「セレクター」リストボックスと、セレクター リストボックスの「新規」パーツのオプションが表示されます。ユーザーが「新規」のままである場合、フィールドはユーザーが手動で入力できるように空白のままになり、データベースに新しいアイテムとして追加されます。ユーザーが「セレクター」リストボックスをスクロールして CW_ID を選択すると、スプレッドシートからプルされ、選択された CW_ID に対応するデータがフィールドに入力され、ユーザーが編集できるようになります (パーツに関する詳細を変更します)。

データベースに SQL 構造を使用しているため、リンクされたテーブルがいくつかあります。

  • 材料テーブル (製造元の ID [manufacturer_ID] を含む、部品に関するほとんどの情報を保持します)

  • メーカー テーブル (materials.manufacturer_ID にリンクされています)

現在、フォームは材料シートのみを使用してフィールドに入力しているため、「製造元」のフィールドには ID 番号のみが表示されます。ユーザーの目的のために、スクリプトで材料シートに表示されているmanufacturer_IDをチェックし、メーカーシートに移動し、一致を見つけて、現在選択されているインデックスとしてメーカーリストボックスに表示するようにします。(または、メーカーの名前をフィールドに表示させるだけです)。

これまでのところ、これは私のスクリプトの一部です:

(「//****これは私が取り組んでいる部分です」の下までスクロールします)

これは私には理にかなっていますが、うまくいきません。セレクター リストボックスのパーツをクリックすると、必要に応じてすべての情報がフィールドに入力されます。ただし、製造元のリストボックスは適切な製造元にジャンプせず (製造元フィールドに入力されているように)、そのままそこに留まります。

(フォームがどのように見えるかについては、画像を参照してください)

http://oi61.tinypic.com/6h6tqp.jpg

メーカーのリストボックスとフィールドが表示されますが、現時点では、部品が選択されたときにデータを表示するようにメーカーのフィールドのみが変更されます)

どんな助けでも大歓迎です!:)

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

asp.net - リストボックスで選択したアイテムを削除できません

ハイフンとカンマを含む複数の文字列を含むリストボックス項目がありますが、選択した項目を削除できないためですか?

もしそうなら、アイテムを削除する方法は何ですか?

以下の例 -

例: item1-item2-item3a,item3b (私のリストボックス項目)

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

vba - 複数のモジュール内でのユーザー選択の呼び出し

私の現在のコードは Workbook_Open イベントを使用して、ユーザーが何をしたいのかを尋ねるユーザーフォームを実行します。ユーザーが「A」を選択すると、開いているすべての workbooks.name(s) を表示するリストボックスがユーザーフォームに入力されます。ListBox_DblClick イベントを使用して、ユーザーがアクティブにしたいワークブックの名前をダブルクリックして、1 つのシート (一時フォルダーにエクスポートされるワークブック) から情報をコピーするタスクを実行できるようにします。ほぼ不可能な命名システム) を、名前と場所がわかっているワークブックに変換します。ダブルクリックイベントの後にリストボックスの値を呼び出すことができないようです。ポインタはありますか?

Userform2 内のコード:

ダブルクリックイベントが呼び出すサブ(私が問題を抱えているもの)は次のとおりです。

助けてくれてありがとう!