换一种思维考虑,如果我们能得到所在行的index,那么就可以通过这个index选中我们要选的行。
ListView.SelectedIndex = index ; 不过我不支持这种做法,因为index不能直接获取呢。
我的做法如下:
为模板里的textbox添加gotfocus事件
private void TextBox_GotFocus(object sender, RoutedEventArgs e)
{
var aa = (sender as TextBox).DataContext;
listView1.SelectedItem = aa;
}
获取textbox所在行所绑定的数据实体 然后再设置其选中状态。如果需要index的话,可以通过循环来获取这个实体是实体集合的第几项即可。