問題タブ [bindinglist]

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

c# - BindingList の逆ソート

DataGridにバインドしているBindingList(T)から継承するカスタム クラスがあります。

ただし、DataGridは上から下に移入されており、下から上に移入したいと考えています。したがって、一番上のアイテムではなく、一番下のアイテムがインデックス 0 になります。

DataGridが逆方向に読み取るようにBindingList(T)を変更するにはどうすればよいですか?

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

c# - BindingList から派生したクラスのパブリック フィールド/プロパティ連載しない

BindingList(Floor)から派生するクラスをシリアル化しようとしています。ここで、FloorはプロパティFloor.Heightのみを含む単純なクラスです。

これが私のクラスの簡略版です

次のコードを使用して、CustomBindingList のインスタンスをシリアル化します。

それでも、上記のtestStringは、次の XML に設定されて終了します。

「publicField」または「publicPropertyもシリアル化するにはどうすればよいですか?

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

c# - BindingListでListChangedType.ItemMovedListChangeイベントが発生する原因

DataGridに表示しているBindingList(T)があります。ListChangedイベントを監視しており、 ListChangedイベントが呼び出されたときにさまざまなアクションを実行しています。

イベントのListChangeType引数をチェックして、リストがどのように変更されたかをチェックし、それに応じて応答しています。ただし、ListChangedイベントタイプItemMovedがあることに気付きました。

アイテムをリストの上下に移動するための「上に移動」と「下に移動」のボタンがあります。しかし、これらは実際には選択されたアイテムを削除し、それをより高い位置またはより低い位置に再挿入しています。

ただし、リスト内のアイテムを移動するように見えるBindingList(T)のメソッドは表示されません。それで、私は何かが足りないのですか、それともItemMovedタイプのListChangedイベントを引き起こすBindingList内のアイテムを移動する方法がありませんか?

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

vb.net - バインディングリストから削除されたアイテムのインデックスを取得する

BindingListに追加されたアイテムのインデックスを取得できます。削除されたアイテムがエラーになる場合にインデックスを取得しようとすると

これが私のコードです

編集:C#での回答も歓迎します....誰ですか?

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

c# - 私のクラスのいくつかのメンバーは、BindingList にバインドされた datagridview に表示されません

そして BindingList aList;

また、次のような上記の(すでに入力されている)リストにバインドしようとする DataGridTExtBoxColumns の束を持つグリッドがあります。

しかし、実行時には、colDate 列と colTime 列だけが適切に入力されます。他のすべては空白です..Grid.Rows[idx].Cells[idx].Value他の列を具体的に見ると、すべてnullです。

また、AutoGenerateColumns を true に設定すると、追加の列 NoteID が表示され、これも適切に入力されますが、ANote、Amount、ADate、AName、および Note フィールドは空白のままです。

リスト内のデータに問題はありません..すべてのクラスメンバーが有効な値を持っています.

私が何かを見逃していない限り、それは BindingList または DataGridView に問題があるようです..そうでない場合は、これをデバッグする方法についてのアイデア..それは非常に単純なテストケースです!

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

c# - C# で DataGridView と BindingList を使用する場合のスレッド セーフに関するアドバイス

イベントをログに記録するためのクラスを作成しています。私の LogClass はシングルトンとして実装されており、システム内のどのクラスでもログ エントリを書き込むことができます。エントリはリストに保存され、バッファがいっぱいになるとディスクにダンプされます。

実行中に LogClass の内容を表示するために DataGridView を使用しているため、BindingList を使用して Viewer が自動的に更新されるようにしました。

私のクラスがどれほどスレッドセーフなのか疑問に思っています。リストに新しいエントリを追加するたびに「ロック」を使用しています。また、リストを繰り返し処理してディスクにダンプするときも使用しています。DataGridView 以外に、ログから読み取るオプションがなく、エントリをログに追加するためのオプションがないため、このクラスは基本的に書き込み専用です。ダンプは内部で実行され、BindingList に明示的な読み取りコマンドがあるのはそのときだけです。

だから私の本当の懸念は、 DataGridView と BindingList で何が起こっているのですか? BindingList は、リストが変更されるたびにイベントをスローします。追加が完了するとイベントがスローされるため、新しいエントリを追加する場合、これは問題ではないようです。

Dump() の私のコードは次のとおりです。

繰り返し全体でリストをロックしているにもかかわらず、イベントがビューアーにスローされ、リストが変更された (削除のため) ため、DataGridView によって読み取られます。リストを変更している間、リストへの読み取り/書き込みは本当に必要ありません。何か案は?

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

winforms - WinformsDataGridViewでのビジネスオブジェクトの編集

BindingListとしてWinformsDataGridViewにバインドされたビジネスオブジェクトのプロパティ(1つのプロパティ、1つの列)を編集することはできますか?

または、DataSetまたはDataTableを使用する必要がありますか?

セルを編集モードにすることができません。

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

devexpress - XtraGrid に新しく追加された行が正しく表示されない

私は DevExpress 2.9.5 の XtraGrid を使用して、動的な線のセットのブロッターを表示しています。ブロッターは別のアプリケーションに統合されます。これが、UserControl クラスに基づいて、いくつかのカスタム インターフェイスを実装する必要がある理由です。

データは BindedList を使用してコントロールにバインドされるため、変更はフォームに自動的に反映されます。そして、次のように fDeals に新しい行を追加しようとすると:

... セリフは見えますが、内容はゴミです。

小さなテストアプリケーションで同じことをしようとしました。テスト アプリケーションのブロッターが DevExpress.XtraEditors.XtraForm に基づいているという違いだけで、問題なく動作します。私には、元のブロッターの形式は、一部のメソッドをオーバーロードしたり、一部のイベントを見逃したりしていないように見えます。しかし、何が欠けているのか正確にはわかりません。

誰かが私が間違っていること、またはしていないことを教えてもらえますか?

ありがとう。

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

c# - AllowUserToAddRowsは、DataGridViewのList<>Datasourceでは機能しません

私はDataGridViewDataSourceセットを持っていますList<myClass>

AllowUserToAddRowsただし、に設定するとtrue、新しい行インジケーターが表示されません。

に設定するDataSourceBindingList<myClass>、問題は解決したようです。

Q:を置き換える必要がありますかList<>BindingList<>それともより良い解決策がありますか?

0 投票する
7 に答える
3547 参照

c# - アイテムがC#のコレクションに追加される前にイベントを発生させるにはどうすればよいですか?

アイテムがBindingListに追加される前に、いくつかの処理を実行したいと思います。ListChangedイベントがあるようですが、これはアイテムが追加された後に発生します。AddingNewイベントは、AddNewメソッド(Addメソッドではない)が呼び出されたときにのみ発生します。誰かが以前にこのようなことをしたことがありますか?

アップデート:

次のクラスを作成しました。IListでAddメソッドが呼び出されると、新しいAddメソッドがトリガーされます。それで、私は他の場所で読んだキャストの問題がありますか?コレクションからISpecialCollectionインターフェイスを削除した場合、Addメソッドが呼び出されません。なぜそれが異なって動作しているのか誰かが説明できますか?ISpecialCollection <インターフェイスを使用すると、キャストの問題が発生しますか?