只有一行时,WPF ListView无法触发选择更改
我有一个listview,它的数据源在更新搜索文本框后发生了更改 当我输入只返回一行的搜索条件时,我无法触发OnSelectionChanged事件,列表框在任何其他时间都会按预期工作 我曾尝试在代码中更改SelectedItem和SelectedIndex,在列表视图上无目的地单击行上和行下,都处于疯狂的边缘 是否有人知道解决方案,以便我能够更改所选项目!!请帮忙 我想运行的代码是:只有一行时,WPF ListView无法触发选择更改,wpf,listview,selection,Wpf,Listview,Selection,我有一个listview,它的数据源在更新搜索文本框后发生了更改 当我输入只返回一行的搜索条件时,我无法触发OnSelectionChanged事件,列表框在任何其他时间都会按预期工作 我曾尝试在代码中更改SelectedItem和SelectedIndex,在列表视图上无目的地单击行上和行下,都处于疯狂的边缘 是否有人知道解决方案,以便我能够更改所选项目!!请帮忙 我想运行的代码是: 如上所述的问题是,如果列表中的项目数=0或1,则不会触发此事件。如果有一条记录,我想知道它是什么,并用它来传递
如上所述的问题是,如果列表中的项目数=0或1,则不会触发此事件。如果有一条记录,我想知道它是什么,并用它来传递变量。然后使用另一个触发器。例如,文本框上的文本已更改 如果选定项目是唯一的项目,则无法更改该项目,因为没有其他项目可供选择。当所选项目发生更改时,您试图触发什么类型的活动?我只是想让所选项目稍后通过。我只想说MyItem=lstView.SelectedItem;我通过将所选项设置为.Items.FirstOrDefault()解决了这个问题;
private void lstShedBatch_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
try{
if (lstShedBatch.SelectedItem != null && lstShedBatch.SelectedIndex != -1)
{
ShedBatch currShedBatch = (ShedBatch)this.ShedBatchView.CurrentItem;
Window1.ShedBatchId = currShedBatch.ShedBatchId;
Window1.selectedShedId = currShedBatch.ShedId;
RoutedEventArgs args = new RoutedEventArgs(selectShedBatchClickEvent);
RaiseEvent(args);
}
}
catch
{
}
}