只有一行时,WPF ListView无法触发选择更改

只有一行时,WPF ListView无法触发选择更改,wpf,listview,selection,Wpf,Listview,Selection,我有一个listview,它的数据源在更新搜索文本框后发生了更改 当我输入只返回一行的搜索条件时,我无法触发OnSelectionChanged事件,列表框在任何其他时间都会按预期工作 我曾尝试在代码中更改SelectedItem和SelectedIndex,在列表视图上无目的地单击行上和行下,都处于疯狂的边缘 是否有人知道解决方案,以便我能够更改所选项目!!请帮忙 我想运行的代码是: 如上所述的问题是,如果列表中的项目数=0或1,则不会触发此事件。如果有一条记录,我想知道它是什么,并用它来传递

我有一个listview,它的数据源在更新搜索文本框后发生了更改

当我输入只返回一行的搜索条件时,我无法触发OnSelectionChanged事件,列表框在任何其他时间都会按预期工作

我曾尝试在代码中更改SelectedItem和SelectedIndex,在列表视图上无目的地单击行上和行下,都处于疯狂的边缘

是否有人知道解决方案,以便我能够更改所选项目!!请帮忙

我想运行的代码是:


如上所述的问题是,如果列表中的项目数=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
       {
       }
    }