アイテムをグループ化するWindows Phone 8.1 WinRTアプリにListView
があります。グループテンプレートが定義されており、Rectangle
オブジェクト、Fill
プロパティのオブジェクトはImageBrush
です。 ListView
には、項目とグループを表示するItemsPanel
としてItemsStackPanel
があります。ItemsStackPanelは、毎回それらを再作成する代わりにキャッシュされたアイテムを使用し続けます。
問題は、イメージが一度読み込まれて描画されるために仮想化中にアイテムコンテナを再利用することですが、私がスクロールすると、イメージオーダーがイメージを失うイメージで、スクラブされてしまいます。 ImageBrush
のいずれかが発砲されず、アイテムがキャッシュされていることを示します。
ItemsStackPanel
に"Recycling"
の代わりにVirtualizingStackPanel.VirtualizationMode="Standard"
を設定しようとしましたが、効果がないようです。
ご協力いただければ幸いです。
コードビハインド内のリストビューアイテムオブジェクトを使いこなしていませんか?私はこれがテンプレートで正しく実行している場合、WPFでこれが起きることはないと知っていますが、あなたは本当にUWPにいると思うし、WPFタグを追加して、私のケースでは、おそらく私は古いか、十分な過敏ではない)仕事。 –
私が行う唯一のことは、何らかの理由でメインイメージを開くことができない場合(ImageBrush.ImageFailedイベントを購読することです)(ただし、アイテムが最初に作成された後ではハンドラがヒットしない)。同じソースにバインドされたItemsWrapGridにはこの問題はありません。何か案は? Windows Phone 8.1のWinRTがプラットフォームだと言いましたが、私はWPFが誰かが同じ問題を抱えていて助けてくれるかもしれないと考えました。 – TheAgent
アイデアがありません、申し訳ありません。私はあなたでしたが、私は問題を再現する最小の例を作成します。私にとっては、単純な文脈では問題を再現できないので、破られていない例と実際のコードが壊れていることを比較し、解決策を見つけるだけです。しかし、MVCEを書くことができれば(うまく動かない、という意味)、助けようとしている誰にとっても大きな助けになるだろう。 –