我通過編輯ListBox
的默認樣式知道,我可以在ListBox
的末尾有Button
。在ListBox的末尾添加一個加載更多按鈕而不會丟失虛擬化?
<ScrollViewer x:Name="ScrollViewer" ...>
<StackPanel>
<ItemsPresenter />
<Button />
</StackPanel>
</ScrollViewer>
但是,這樣做將打破ListBox
的虛擬化和渲染時間變得很長。
所有我能想到的是,
- 創建一個虛擬項目,並將其添加到我的項目集合中 視圖模型的結束,並在虛擬對象有一個
Visibility
屬性調用ButtonGridVisibility和將其設置爲Visibility.Visible
。 - 在我的
ListBox
的ItemTemplate
,有兩個Grids
。一個顯示 正常的項目佈局,另一個顯示加載更多Button
。 然後根據切換其Visibility
ButtonGridVisibility屬性。
這可能工作,但我只是想知道是否有更簡單/更好的方法?
啊......我希望我一年前就知道這一點!非常感謝卡雷爾! –