我无法设置列表框的选定项目,我正在填充并在代码中添加LayoutRoot
的子项。
我在返回页面时创建了ListBox
,所以我保存了一个变量,它会告诉我在用户点击之前所选项目是什么。
我尝试设置SelectedIndex
,但这似乎不起作用。选择项目并调用SelectionChanged,但该项目不会成为焦点。
我也尝试了MyListBox.ScrollIntoView(MyListBox.Items[MyListBox.SelectedIndex])
和MyListBox.UpdateLayout()
的组合,但这似乎也没有用。该项目似乎没有成为焦点。
答案 0 :(得分:0)
尝试MyListBox.SelectedItem.EnsureVisible()
。
(如果它没有SelectedItem
(桌面CLR上没有ListBox
),则改为使用SelectedItems[0]
E:好的,看起来像Windows Phone不支持。但是,它确实支持MyListBox.EnsureVisible(MyListBox.SelectedItems[0])
答案 1 :(得分:0)
我最后通过将具有ListBox的UserControl添加到Page的XAML中,并将ListBox添加到UserControl的XAML中来解决此问题。
然后,我能够使用ScrollIntoView(MyListBox.Items[mySavedSelectedItem]);
我只是在用户进行选择时保存了这个值。
mySavedSelectedItem = ((ListBox)sender).SelectedIndex;