gpt4 book ai didi

wpf - 将 WPF ListView 滚动到特定行

转载 作者:行者123 更新时间:2023-12-02 07:31:17 34 4
gpt4 key购买 nike

WPF,类似浏览器的应用程序。
我得到一个包含 ListView 的页面。调用 PageFunction 后,我向 ListView 添加一行,并希望将新行滚动到 View 中:

  ListViewItem item = ItemContainerGenerator.ContainerFromIndex(index) as ListViewItem;
if (item != null)
ScrollIntoView(item);

这有效。只要新行在 View 中,该行就会获得应有的焦点。

问题是,当线条不可见时,一切都不起作用。
如果该行不可见,则没有生成的行的 ListViewItem,因此 ItemContainerGenerator.ContainerFromIndex 返回 null。

但是如果没有该项目,我如何将该行滚动到 View 中?有没有什么方法可以滚动到最后一行(或任何地方)而不需要 ListViewItem?

最佳答案

有人告诉我一种滚动到特定行的更好方法,既简单又有效。
简而言之:

public void ScrollToLastItem()
{
lv.SelectedItem = lv.Items.GetItemAt(rows.Count - 1);
lv.ScrollIntoView(lv.SelectedItem);
ListViewItem item = lv.ItemContainerGenerator.ContainerFromItem(lv.SelectedItem) as ListViewItem;
item.Focus();
}

较长的版本在 MSDN forums :

关于wpf - 将 WPF ListView 滚动到特定行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/211971/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com