如何在导航到列表视图时禁用列表视图中的默认选择

时间:2012-07-09 03:27:45

标签: windows-8 windows-runtime winrt-xaml

我在场景中有两个列表视图(listview1和listview2,listview2的内容取决于listview1上的selecteditem),当我导航到场景时,我希望选择listview1中的第一个项目,并在其他listview(listview2)但我不希望默认情况下选择listView2中的任何项目。

我观察到的是listView2中的第一项也被选中,导致listview2触发selectionchanged事件(我希望仅在用户明确选择时才触发)

3 个答案:

答案 0 :(得分:6)

无需解决方法。 只需在ListView中设置IsSynchronizedWithCurrentItem="False"即可。 这也适用于GridViews。

答案 1 :(得分:1)

selectionchanged个事件将被触发且无法停止。但它可以在后面的代码中绕过(使用标志)。

如果ListView绑定到CollectionViewSourceCollectionViewSource会将第一项设置为已选中。

如果ListView绑定到常规Collection,则不会自动选择任何项目。

答案 2 :(得分:0)

这是因为您设置了列表视图1&的事件处理程序。 2,XAML,也许吧。 如果您先设置数据源和所选项目,那么, 用你的代码设置事件处理程序,我觉得它运作良好。