Hi @George
the first idea that comes to my mind is to change the Overlays collection and create a new one that only consists of the one clicked rect.
Keep all the other ones in a backingstore for when the user wants to display all the overlays again, you can simply call Overlays = new ObservableCollection(overlaysBackup)
Second idea (probably the better one):
Set the IsVisible or IsEnabled property of all Overlays to false that are not the desired overlay.
Changes in the selected item or the whole Overlays collection will be handled as described here:
https://forum.commonvisionblox.com/t/wpf-mvvm-cvb-display-with-overlays-fixed-and-resizeble/956
Cheers
Chris