internal void Detach()
{
_listView.SelectionChanged -= OnListViewSelectionChanged;
_listView = null;
var eventInfo =
_boundSelection.GetType().GetDeclaredEvent("CollectionChanged");
eventInfo.RemoveEventHandler(_boundSelection, _handler);
_boundSelection = null;
}
}