请问有没有dalao知道如何在WPF中,实现ListBox左键单击选中,再次单击取消选中的效果?

现在项目中有个需求,单击ListBox中某一项,下方的ItemsControl绑定这一项下的内容,再次单击这一项,取消选中,绑定所有内容。请问有没有dalao知道如何实现ListBox左键单击选中,再次单击取消选中的效果?

int CurSelectedIndex = -1;
private void listBox1_MouseCaptureChanged(object sender, EventArgs e)
{
Invoke(new Action(() =>
{
if (listBox1.SelectedIndex != -1)
{
if (CurSelectedIndex == listBox1.SelectedIndex)
{
listBox1.SelectedIndex = -1;
}
}
CurSelectedIndex = listBox1.SelectedIndex;
}));
}