我有一个绑定到 ListBox 源的 ObservableCollection。ListBox 使用 Style 在 ListBox 末尾显示一个按钮以“加载更多”内容。加载最后一个内容后,我更改了 ListBox 的样式,使其显示“没有更多帖子”。
问题是列表框在更改样式时会转到顶部(第一项)。有什么方法可以防止这种情况发生吗?
// iterate over items
foreach (Record rec in root.data.records)
{
// add items to observablecollection
}
// check if there are more items
if (root.data.nextPage == 0)
{
// there are no more items => set style with "no more posts"
Dispatcher.BeginInvoke(() => listbox.Style = (Style)App.Current.Resources["listboxend"]);
return;
}
else
{
// there are still more items => set style with button
Dispatcher.BeginInvoke(() => listbox.Style = (Style)this.Resources["listboxwithbutton"]);
}
奇怪的事情:一开始列表框没有样式。当我设置“listboxwithbutton”样式时,列表框不会到顶部......仅在设置“listboxend”样式时。