[解決済み] ICollectionViewとObservableCollectionのどちらをバインドするか?
疑問点
を結合する必要がありますか?
DataGrid
を
ICollectionView = CollectionViewSource.GetDefaultView(collection)
または
ObservableCollection<T> collection;
???
MVVMのベストプラクティスとその理由は何ですか?
どのように解決するのですか?
あなたは
常に
にバインドされます。
ICollectionView
にバインドされます。
があると仮定します。
var collection = new ObservableCollection<string>();
var collectionView = CollectionViewSource.GetDefaultView(collection);
この場合,バインディングは
collection
または
collectionView
は同じものです。バインディングエンジンはデフォルトのコレクションビュー (これは参照番号が
collectionView
にバインドするように指示した場合、バインドエンジンはデフォルトのコレクションビュー (参照は collection
.
これは、あなたの質問に対する答えが "全く違いがない" であることを意味します。
コレクションに直接バインドする場合でも、バインド エンジンはデフォルトのビューにバインドされます。ソート基準などのビューのプロパティを変更すると、コレクションに直接バインドしているように見えるバインディングに影響を与えますが、これは裏ではデフォルト ビューへのバインドであるためです。
デフォルトのコレクション ビュー (すなわち、コレクション自体。デフォルト ビューに明示的にバインドする理由はないため) と同じコレクションの別のビューのどちらにバインドすべきでしょうか。
各ビューが現在のアイテム、ソート基準などの独自の概念を持っていることを考慮すると、同じコレクションに複数のバインドを持つことを意図し、バインドされたコントロールが現在のアイテム、フィルターおよび会社の異なる概念を持つ必要がある場合、望むことは、同じ基礎となるコレクションの複数のビューに明示的にバインドすることであるといえます。
関連
-
[解決済み】SmtpException: トランスポート接続からデータを読み取れません:net_io_connectionclosed
-
[解決済み】名前 'ViewBag' が現在のコンテキストに存在しない - Visual Studio 2015
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] C#の正しいバージョン番号を教えてください。
-
[解決済み] 複数の例外を一度にキャッチする?
-
[解決済み] C#で文字列のエンコーディングを手動で指定せずに、一貫性のあるバイト表現を得るには?
-
[解決済み] .NETでのdecimal, float, doubleの違い?
-
[解決済み] usingディレクティブはネームスペースの内側と外側のどちらを使うべきですか?
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み】大文字・小文字を区別しない「Contains(string)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】GDI+、JPEG画像をMemoryStreamに変換する際にジェネリックエラーが発生しました。
-
[解決済み】WebForms UnobtrusiveValidationModeは、jqueryのScriptResourceMappingを必要とする
-
[解決済み] [Entity Framework 4.1でエンティティに関連オブジェクトを追加する際に、エンティティオブジェクトをIEntityChangeTracker.の複数のインスタンスから参照できない。
-
[解決済み】ASP.NET Core Dependency Injectionのエラーです。アクティブ化しようとしているときに、タイプのサービスを解決できません。
-
[解決済み] DBNullから他の型にオブジェクトをキャストすることができない
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み】Swashbuckle/Swagger + ASP.Net Core: "Failed to load API definition" (API定義の読み込みに失敗しました
-
[解決済み】「...は'型'であり、与えられたコンテキストでは有効ではありません」を解決するにはどうすればよいですか?(C#)
-
[解決済み] 2つのリストを結合する
-
[解決済み】 C# 条件演算子エラー 代入、call、increment、decrement、await、new object 式のみ文として使用可能です。