Windows 绑定后滚动到长列表选择器中的特定项

Windows 绑定后滚动到长列表选择器中的特定项,windows,windows-phone-7,longlistselector,Windows,Windows Phone 7,Longlistselector,我正在使用Longlistselector绑定聊天信息。绑定后,我需要显示最后一条消息。但默认情况下,它将成为最重要的信息。我尝试滚动到最后一项“(滚动到(最后一条消息)),但它不起作用。任何人都可以提供解决方案。尝试将SelectedItemIndex设置为最后一项的索引。您是否尝试过使用AnimateTo()并将其传递给列表中的最后一项 或者,您可以查询控件的可视树并访问内部[Templated]列表框的ScrollViewer,然后调用ScrollToVerticalOffset其他人通过

我正在使用Longlistselector绑定聊天信息。绑定后,我需要显示最后一条消息。但默认情况下,它将成为最重要的信息。我尝试滚动到最后一项“(滚动到(最后一条消息)),但它不起作用。任何人都可以提供解决方案。

尝试将SelectedItemIndex设置为最后一项的索引。

您是否尝试过使用
AnimateTo()
并将其传递给列表中的最后一项


或者,您可以查询控件的可视树并访问内部[Templated]列表框的ScrollViewer,然后调用
ScrollToVerticalOffset

其他人通过在列表框上的ScrollIntoView()之前调用UpdateLayout()获得成功。

可能AnimateTo()方法将帮助ScrollTo()正常工作,但请注意,它使用从对象继承的Equals()方法,因此它可能会对对象进行实例比较。。。你确定你的lastmessage对象与列表中的实例完全相同吗?选中selectedItem时不会自动进入视图,因此这不起作用。我说的是索引,不是项。当您更改所选索引时,它将滚动到该索引。正确使用ListBoxDeployment.Current.Dispatcher.BeginInvoke(()=>{ScrollTo(LastItem);});我们需要在scrollAnimateTo()中添加一个线程,该线程标记为ObsoleteAttribute,在源代码中,可以看到它所做的只是调用ScrollTo()方法。这是可行的,我在ScrollTo(项目)之前添加了它,没有其他异常,谢谢!