Ugh, il solo fatto che quel codice funziona mi fa accapponare la pelle... Te la cavi solo perché VB.NET ti sta facendo un milione di cast impliciti di nascosto, ma evita, è pessimo stile di programmazione.

TextBox1.Text è una stringa, per cui per dividerla per qualcosa la devi prima convertire in un numero (di tipo Double nel tuo caso), cosa che puoi fare con Double.Parse. Quindi tieni 1000 come numero (e non come stringa) ed effettui la divisione. A questo punto hai un Double, che puoi convertire in stringa e formattare come ti pare con il suo metodo ToString, per poi assegnarlo a TextBox2.Text.

In sintesi,
codice:
TextBox2.Text = (Double.Parse(TextBox1.Text)/1000.).ToString("R")
(dove R specifica - di fatto - di scrivere tutte le cifre decimali che ci sono)