I had this problem too and found a way to fix it without big work. But I'm not sure if there aren't any more bugs like this.

Anyway... This is my solution for this poblem.

There's a method 'StartEdit()' in the same region as 'FlashNode()' in TreeView.cs. The only thing to do is adding following code at the beginning of the method 'StartEdit()':

----
if (this.InvokeRequired)
{
this.Invoke(new MethodInvoker(delegate
{
StartEdit();
}));
return;
}
----

very simple but it works ;)