0

在 Windows Phone 8 上,我有一个列表框,每个 ListboxItem 的 DataTemplate 都包含文本框(以及复选框等)

现在,当用户单击 TextBox(复选框等)时,它会获得焦点,但 Listbox 的 SelectedItem 属性不会改变。我需要知道用户当前正在编辑列表中的哪个项目,并且我使用 MVVM 模式,所以我绑定了 SelectedItem。

对于 WPF,我在这里找到了几种方法,但它们都不适用于 WP8,主要是因为 WP8 上没有触发器。

谢谢你的帮助

4

1 回答 1

0

使用 TextBox 的 GotFocus 事件获取 ListBoxItem。

private void TextBox_GotFocus(object sender, RoutedEventArgs e)
{
    ListBoxItem itemSelected = sender as ListBoxItem;
    listBox.SelectedItem = itemSelected;
    // You can also get underlying data context of MVVM by
    // MyDataContextClass selected = itemSelected.DataContext as MyDataContextClass;
    // where MyDataContextClass is the class with which you are binding ListBoxItem
}
于 2013-09-26T11:55:00.147 回答