... これは(スクロールピクセルベース)、Microsoftが4.5を.NETに "追加" ものです。
WPF 4では、TreeViewには論理的なスクロールがありますが、ListBoxとItemsControlではありません。 それはどのようにTreeViewで動作し、ListBoxでは動作しませんか?これは、スクロールがVirtualizingStackPanelによって管理されているので、質問する必要のある質問です。
「秘密」は、IsPixelBasedという名前のVirtualizingStackPanelの内部プロパティにあります。
これをtrueに設定すると、論理的なスクロールが戻されます。
しかし、これにはコストがかかります。大きなアイテムソース(仮想化とコンテナリサイクルを使用していても)はスクロールが鈍いようです。 (大きなアイテムのソースは50,000または100,000と同じですが)物理的な(アイテムベースの)スクロールではそうではありません。
私はデフォルトでピクセルベースのスクロールで仮想化pabelを持っていることの一例である。この問題は、ここでWPF 4.5で
を解決していることを願って:あなたは、
public class VSP : VirtualizingStackPanel
{
public VSP()
{
typeof(VSP).GetProperty("IsPixelBased", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(this, true, null);
}
}
「物理的ではなく、論理的」とはUI仮想化を参照するのに「論理」を使用しますか?あなたがこの質問に興味があれば、[ItemsControlの仮想化](http://stackoverflow.com/q/2783845/302677) – Rachel