这么简单的任务,但我真的找不到办法去做。我需要知道显示 ListView 的用户是否显示最后一项。
有人在Scroll
事件中使用事件ScrollBar.Scroll
来解决此问题,但这不是我的情况:我需要检查 ListView 的最后一项在触发另一个完全不相关的自定义事件时可见。
我使用 TextBox 和自己的方法.GetLastVisibleLineIndex()
来完成,这非常方便,但我找不到与 ListView 相似的方法。< / p>
我该如何解决这个问题?
答案 0 :(得分:1)
嗯..我最后解决了!使用此博客中的IsFullyOrPartiallyVisible
功能:http://munnaondotnet.blogspot.it/2011/09/is-item-is-visible-in-scroll-viewer.html
我的ListView名称是ListViewData
try
{
if (IsFullyOrPartiallyVisible((ListBoxItem)listViewData.ItemContainerGenerator.ContainerFromItem(listViewData.Items[listViewData.Items.Count - 1]), listViewData))
{
listViewData.SelectedIndex = listViewData.Items.Count - 1;
listViewData.ScrollIntoView(listViewData.SelectedItem);
}
}
catch { }
我不想在不到10分钟的时间内提出问题并回答问题,但是我在这里问了几天之后我就在努力解决这个问题:)