方法 : ListBox のスクロール速度を向上させる
ListBox に多くの項目が含まれていると、マウス ホイールの操作、またはスクロール バーのつまみのドラッグによる ListBox のスクロール時に、ユーザー インターフェイスの反応が遅くなる可能性があります。 VirtualizingStackPanel.VirtualizationMode 添付プロパティを Recycling に設定することで、ユーザーがスクロールを実行したときの ListBox のパフォーマンスを向上させることができます。
使用例
説明
次の例では、ListBox を作成し、VirtualizingStackPanel.VirtualizationMode を Recycling に設定することで、スクロール時のパフォーマンスを向上させます。
コード
<StackPanel>
<StackPanel.Resources>
<src:LotsOfItems x:Key="data"/>
</StackPanel.Resources>
<ListBox Height="150" ItemsSource="{StaticResource data}"
VirtualizingStackPanel.VirtualizationMode="Recycling" />
</StackPanel>
次の例は、前の例で使用するデータを示しています。
Public Class LotsOfItems
Inherits ObservableCollection(Of String)
Public Sub New()
For i As Integer = 0 To 999
Add("item " & i.ToString())
Next
End Sub
End Class
public class LotsOfItems : ObservableCollection<String>
{
public LotsOfItems()
{
for (int i = 0; i < 1000; ++i)
{
Add("item " + i.ToString());
}
}
}