WindowsPhone7のデフォルトのカレンダーアプリに[日]タブがあります。そのタブには、ListBox
無限に、そして非常にスムーズにスクロールできるがあります。
バインディングソースを変更することを考えていますが、その方法がわかりません。
これを達成する方法はありますか?
WindowsPhone7のデフォルトのカレンダーアプリに[日]タブがあります。そのタブには、ListBox
無限に、そして非常にスムーズにスクロールできるがあります。
バインディングソースを変更することを考えていますが、その方法がわかりません。
これを達成する方法はありますか?
カスタムIEnumeratorへのバインドを試すことができます。これを行う簡単な方法は、IEnumerableを返すメソッドを作成し、yield return
ステートメントを使用して要素を返すことです。
public IEnumerable<int> GetDataSource()
{
int i = 0;
while (true)
{
yield return i++;
}
}
次に、それをリストボックスに割り当てます。
this.ListBox.ItemsSource = this.GetDataSource();
リストボックスでデータ仮想化が有効になっていることを確認してください。そうすれば、アイテムをその場で読み込むことができます(リストボックスが無限のデータソース全体を一度に読み込もうとすると、明らかに機能しません)