Windows Phone 8 では、アイテムのリストを表示しています (このリストには、40 または 50 の任意の数のアイテムが含まれる場合があります...)。ユーザーがプルダウンすると、以前のリストが更新されます..ユーザーは、プルダウンしてリスト内のすべてのアイテムを表示できます。ここで、これらのアイテムを既読または未読としてマークしたいのですが、これらのアイテムがユーザーによって視覚化され、リスト ボックスのアイテムにはクリックできないテキストのみが表示されることをどのように知ることができますか。現在、一度に 5 つの項目を表示できるエミュレータ WVGA 512MBを使用しています。
1 に答える
0
項目が固定サイズの場合、ListBox テンプレート内の scrollviewer の scrolloffset を見て、それらが画面上にあるかどうかを判断できます。(VisualTreeHelper 経由で取得します。)
事実上の慣例では、アイテムを既読としてマークするために、別のページに移動したり、他の方法で操作したりする必要がない場合、アイテムは一度表示されると既読としてマークされます。
これは古いアイテムには問題なく機能しますが、現在表示されているアイテムの上に新しいアイテムをロードしている場合、これは難しくなる可能性があります。自分でデータ仮想化を管理している場合は、アイテムがいつ実現されるかに基づいてこれを行うことができます。を使用すると、代わりにこれを検出するために使用できるイベントがLongListSelector
発生します。ItemRealized
于 2013-03-18T18:22:16.197 に答える