問題タブ [observablecollection]

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

c# - 2 つの観察可能なコレクションをリストボックスに結合しますか?

プロパティのクラスに設定された2つの監視可能なコレクションがあります。これらのコレクションの両方を 1 つのリストボックスに結合する必要があります。Compositecollection クラスを調べましたが、必要なものではありません。理想的には、リストボックスを次のようにしたい...

これをリストボックス コントロールと考えてください。各リストボックス項目には、2 つの観察可能なコレクションのソース プロパティからのオブジェクトが含まれています。

実際にそのようなことができるかどうか疑問に思っていますか?

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

wpf - WPF DataGrid - TimeSeries と MultiBinding を組み合わせると、変更通知が失われます。なんで?

2 つの ObservableCollection< TimeValue > を持つクラスがあります。ここで、TimeValue は、(INotifyPropertyChanged を介して) 変更通知と組み合わせたカスタムの DateTime/Value です。私はこれらを目標と実績と呼んでいます。

これらをチャートにバインドすると、すべてが完全に機能し、2 つの LineSeries が得られます。「日付」の列と「値」の列を使用して、それらの1つをDataGridにバインドすると、再び完全に機能します。必要な TwoWay バインディングも取得します。

ただし、「日付」列と、ターゲットと実績のそれぞれの列を持つ DataGrid が必要です。問題は、範囲内のすべての日付をリストする必要があることですが、これらの日付の一部には、ターゲット、実績、またはその両方に対応する値がない場合があります。

そこで、Targets と Actuals を入力として取得し、結合された TimeSeriesC を出力する MultiBinding を実行することにしました。元の値のいずれかに値がない場合は常に null 値を使用します。

機能しますが、基になるデータの変更には応答しません。

これは正常に動作します (1 つの ObservableCollection にバインド):

これは機能しますが、最初の初期化時のみです。変更通知への応答なし:

そして、ここに私の IMultiValueConverter があります:

値が表示されるので、あまり遠く離れることはできません。

私は何を間違っていますか?または、代わりに、これを行う簡単な方法はありますか?

皆さんありがとう!

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

wpf - SubSonic 2.2 コレクションから WPF ObservableCollection を作成する

SubSonic 2.2 で作成された DAL がある場合、それによって作成されたコレクションをコード (pref.VB.NET) で WPF ObservableCollections に変換して、WPF で使用するにはどうすればよいですか?

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

.net - wpfデータバインディングに頭を悩ませることはできません

私のシナリオ: wpf フォームには textbox と wpf toolkig datagrid があります。テキストボックスにテキストが入力されると、私のサービスはIEnumerable<TranslationItem>項目を返します。データグリッドにこのサービスの結果を表示したい。

グーグルで調べてみましたが、頭も尻尾もわかりません。私は WPF を学び始めたばかりで、使用されている用語のほとんどがわかりません。
私が集めたのは、サービスの結果を ObservableCollection に入れる必要があるということです。しかし、どうにかしてデータグリッドにバインドしたいと思います。どうやってやるの?グリッドはどの列を生成するかをどのように認識しますか?

0 投票する
6 に答える
73513 参照

c# - ObservableCollection と Item PropertyChanged

私はこの質問について多くの話を見てきましたが、おそらく私は初心者すぎて理解できません. msdn の例 ( http: //msdn.microsoft.com/en-us/library/ms748365.aspx )のように、"PersonNames" のコレクションである観察可能なコレクションがある場合、aPersonNameが追加または削除など。ビューのプロパティを変更したときに、ビューを更新したいと考えてPersonNameいます。ファーストネームを変更した場合のように。OnPropertyChangedプロパティごとに実装して、このクラスを派生させるINotifyPropertyChangedことができ、期待どおりに呼び出されるようです。

私の質問は、プロパティが変更されたときにビューが更新されたデータをどのように取得するのかということです。ObservableCollectionObservableCollection

これはおそらく非常に単純なことですが、例が見つからないように見えるのはなぜでしょうか。誰かが私のためにこれに光を当てたり、例へのポインタを持ったりできますか?私はそれを大いに感謝します. 現在の WPF アプリの複数の場所にこのシナリオがあり、それを理解するのに苦労しています。


「通常、データの表示を担当するコードは、PropertyChanged現在画面に表示されている各オブジェクトにイベント ハンドラーを追加します。」

誰かがこれが何を意味するかの例を教えてください。ViewModelMy View は、を持つmy にバインドしObservableCollectionます。このコレクションは、イベントRowViewModelをサポートするプロパティを持つ で構成されています。PropertiesChangedしかし、コレクション自体を更新する方法がわからないため、ビューが更新されます。

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

wpf - ViewModel には、View または ViewModel の ObservableCollection が必要ですか?

ViewModel のObservableCollectionsにDataTemplatesを介してバインドすることにより、ItemsControlを使用するときの基本的な MVVM 設計アプローチを理解しようとしています。

stringViews、およびViewModelsのObservableCollections にバインドする例を見てきました。

文字列へのバインドはデモ専用のようですが、WPFの威力が本当に出そうなのは「ViewModelのコレクションを含むViewのコレクションを含むViewModel」へのバインドです。

MVVM パターンに精通しているユーザーにとって、ItemsControl、ListView、ListBox を ViewModel のコレクションにバインドするための標準的なアプローチは何ですか? このような経験からのアドバイスを探しています:

  • 常に ObservableCollection<...> を使用し、決して List<...> を使用しない...
  • コレクションを表示するための ItemsControl よりも優れたものは...
  • コード ビハインドの代わりに ViewModel でフィルタリングを機能させるには、...
  • ... の場合に View のコレクションを使用し、... の場合に ViewModel のコレクションを使用する
  • 90% の時間、ItemsControl を作成し、それを独自の ViewModel を持つ View の ObservableCollection にバインドします...
0 投票する
1 に答える
174 参照

wpf - WPFDataBinding-完全に混乱しています

おやおや!私はこれが嫌いです。なぜそんなに複雑なのですか?

私がやろうとしていること:

それぞれがDataGridを持つ複数のUserControlを持つフォームがあります。各グリッドは、.ItemSourceプロパティを介してObservableCollectionにバインドされ、プログラムがイベントをキャッチするたびに、暗黙のコレクションの1つに変更を加えます。ただし、グリッドの画像は更新されません。

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

silverlight - ObservableCollectionを実装するとSilverlightアプリケーションがクラッシュするのはなぜですか?

ItemsSourceプロパティがObservableCollectionプロパティにバインドされ、SelectedIndexプロパティが整数プロパティにそれぞれバインドされているコンボボックスがあります。

私のデータ構造は次のようになります

これで、アプリケーションが正常に読み込まれます。ただし、ユーザーがComboBoxのSelectedIndexを0から1に変更し、チェックボックスをオンにすると(「DealIndex」プロパティの変更イベントを呼び出すため)、アプリケーションがクラッシュします。

なぜこれが起こっているのかわかりません。誰かが光を当てて解決策を提案できますか?

TIA...スディープ