Non potresti rendere invisibile il nodo, anzi, meglio ancora, non rendi propio tutta la TreeView inutilizzabile?

Se propio è necessario, prova a fare così:

-----------------------------------------------

If (Me.TreeView1.SelectedNode.FullPath = Me.TreeView1.Nodes(IndiceNodo).FullPath)
' Se per caso il nodo selezionato è uguale a quello specificato, lo deseleziona o lo richiude, se
' per caso si apre

'...

End If

-----------------------------------------------

Fammi sapere se è tutto ok