問題タブ [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.
.net - 式を使用したLINQ動的メソッド呼び出し
BindingList(Of T)を拡張するクラスでLINQ式を使用して複数列のフィルタリングを実装しようとしています。関連するコードは次のとおりです。
これは、次のように使用することを目的としています。
ただし、Expression.Callステートメントで例外がスローされます。私は提供する正しい議論を完全に理解することはできません。現在のように、コードを実行すると次のエラーが発生します。
どんな助けでもありがたいです、ありがとう。
c# - C#、BindingList、BindingSource、ListBox の並べ替え?
私はすでに1時間グーグルで検索しましたが、有効な答えが見つかりませんでした.
文字列 Name やいくつかの int Numbers など、さまざまなメンバーを持つ myClass があります。次に、List 型の myList があり、次に Listbox コントロールがあります。
DisplayMember = "Name"
と を使用して、リストボックスにリストを簡単に表示できますDataSource = new BindingList<myClass>(myList.Values)
。
しかし、私が望むのは、クラスのさまざまなメンバーによってソート可能にすることです。私はすでにリストの BindingSource を作成してリストボックスに渡しようとしましたが、リストボックスの唯一のエントリは "(Enumeration)" (バインディングリストのタイプですが、そのメンバーではありません) です。
単純な Listbox コントロールに単純な List を表示し、T のメンバーで並べ替えるには何が必要ですか?
c# - Bindinglist を使用して、datagridview に正しいデータメンバーを表示する
ゴール:
Player から Encapsulate フィールドを表示する
問題:を使用してクラスでのみ表示し
たいdatamember_id
_name
_bust
mainform
bindingList
[]
encapsulate フィールドの上で構文を使用すると想定されていましたか?
c# - BindingList にバインドされた DataGridView でのカスタム列の並べ替え
BindingListにデータバインドされたDataGridViewがあります。私の DataGridView には、追加したカスタム列もいくつかあります。これらはデータ バインドではなく、BindingList のアイテムに基づいて生成されます (つまり、タイプ A の BindingList のアイテムにはタイプ B のプロパティがあります。カスタム列には B.Name が表示されます (編集:この場合、" Name" はクラス B のプロパティであるため、列によって表されるプロパティは BindingList 内の項目には直接見つかりません))。
DataGridView のすべての列を並べ替えることができる必要があります。DataGridView には、Sort(IComparer) と Sort(DataGridViewColumn, ListSortDirection) の 2 つの並べ替えメソッドがあります。2 番目のものを使用してデータ バインドされた列を並べ替えますが、もちろん、データ バインドされていない列で使用すると例外がスローされます。DataSource が null でない場合、最初のメソッドは例外をスローします。
したがって、私が知る限り、DataGridView の組み込みの Sort メソッドはどちらも機能しません。カスタム列に基づいてグリッドを並べ替えるには、他にどのような方法がありますか?
編集:
現時点で行っていることは、次の手順に従って、列ヘッダーのクリックを処理することです: http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.columnheadermouseclick.aspx
問題は次の行で発生します。
newColumn が BindingList 内のオブジェクトのプロパティの 1 つを保持している場合、うまく機能します。しかし、カスタム列の 1 つを並べ替えるには、この行を完全に回避し、その列に基づいてデータ グリッドを並べ替える別の方法を見つける必要があります。それは、独自のソート機能を構築する必要があるということですか? とてつもない痛みになりそうです。
c# - DGV からの削除 -- インデックス [x] に値がありません
セットアップ: 2 つの DataGridView があり、それぞれがカスタム ビジネス オブジェクトの BindingList<> にバインドされています。これらのグリッドには、そのグリッド内のすべての行の数学的合計を含む特別な行があります。この特別な行は、BindingList<> 内の対応する特別なオブジェクトを反映しています (これが追加される行ではないことがわかるように指定します)。 DGV に追加されますが、オブジェクトは BindingList<> に追加されます)。
エラー: 定期的に、Totals Row オブジェクトを見つけて BindingList<> (したがって DGV) から削除する必要があります。これを行うために使用していた元のコードは次のとおりです。
(それほど重要ではありませんが、すべてのレコードを繰り返し表示しているのは、誤って合計行が複数になる可能性を防ぐためです)。このコードは、2 つのグリッドのいずれかに対して、すべての状況で問題なく動作します。ただし、2 番目のグリッドでは、RemoveAt メソッドが呼び出されると次のエラーが発生します。
...ここで、「5」は合計行のインデックスです。 私はこの質問を見つけましたが、これは基本的に同じですが、受け入れられた答えは次のいずれかです: 1) 基になるリストを使用しないでください。上記のコード例の最も内側のメソッド呼び出しを次のように置き換えて、#2 を試しました。
これは同じエラーをスローします。 変更後に再バインドすることを提案するこの質問も見つけました - ただし、このコードは1秒に1回呼び出される可能性があり、リストのデータが多すぎるとグリッドが使用できなくなるため、これは現実的ではありません(私はこれを知っています)悪い経験から)。
グリッドの DataError イベントを処理することもできますが、1 分間に 100 万個のエラーが発生しないようにしたいと考えています。どんな助けでも大歓迎です。
c# - Winform: カスタム コントロール プロパティを BindingList にバインドする
カスタム コントロールから BindingList 内のオブジェクトへのバインディングを作成しようとしています。
テキストボックスを使用しながら、簡単に書くことができます
私のカスタム プロパティ「値」では、これは機能しません (オブジェクトは更新されません)。
カスタム コントロールを機能させるには、何を実装すればよいですか? 既に INotifyPropertyChanged を実装しましたが、機能しません。
この行を機能させたいだけです:
編集1:
私はウェブでこれを読みました: http://kbalertz.com/327413/control-using-Visual.aspxしかし、現時点ではうまくいきません。
c# - ListBoxと連携してListChangingイベントを作成するBindingListのようなカスタムコレクションを作成します
コレクションでアイテムがいつ追加/削除/変更されるかを知る必要がある状況があります。
これらのイベントをトリガーするクラスでBindingListを継承してみましたが、「adding」イベントが機能しません。私がそれが機能していることを発見した唯一の方法は、EndNew()メソッドをオーバーライドすることですが、このメソッドに追加されるオブジェクトを取得する方法が見つかりません(誰かがこれに対する解決策を持っているなら、それも大丈夫です!)。
そのため、BindingListの同じインターフェイス/クラスから継承するまったく新しいクラスを構築し、すべてを実装しました(ただし、ICancelAddNewは継承しませんでした)。
データバインディングを介してリストボックスにバインドしましたが、何も機能しないことがわかりました(listchangedイベントもlistchangingイベントも)。リストボックスでBindingListの動作をシミュレートするにはどうすればよいですか?
どんな提案も大歓迎です、私は回避策のための他のアイデアを持っていません
編集1:
これは私のコレクションです:http://pastie.org/1978601 そしてこれは私がコレクションをリストボックスにバインドする方法です
実際には、サブスクライブされたイベントの下には、MessageBox.Show( "bla");だけがあります。
c# - 私のクラスのBindingListは、そのプロパティを使用してComboBoxにデータを入力しますか?
クラスにBindingListがあり、そのプロパティを使用してComboBoxにデータを入力したいので、リストが変更されるとComboBoxも変更されます。
フォームの読み込み時に、それをComboBoxに割り当てます。
ボックスにAccessまたはAccessIdを値として、Accessを印刷名として入力したいと思います。
問題は、リストの最後の項目だけがコンボボックスに出力されることです。何が間違っているのでしょうか。
c# - listBoxで選択したアイテムをKeyValuePairとして取得する方法C#で?
ListBox
オブジェクトはとバインドされていますBindingList<KeyValuePair<string, string>>
SelectionChangedイベントで、選択したアイテムを次のように取得する必要がありますKeyValuePair<string, string>
KeyValuePairは参照型として使用できないため、次のコードはエラーになります。
これに対する適切な回避策は何ですか?
c# - BindingListから特定のアイテムを選択する方法>?
上記のコードは約10〜30個のオブジェクトを格納しますas KeyValuePair<string, string>
どういうわけか要素を選択する必要があります。たとえば、キー「id」を使用します。
どうすればいいですか?