The thing is that you have ceated a new instance of the form1 like this:
Form1 frm = new Form1();
So what you really is gets here is a new instance of the form1 (with a empty textBox3). What you would have to do is to pass the value (TextBox3) into the previewImage form Or add the value as a parameter into the previewImage form.
Here is a way to do it:
Add a property in the previewImage form, like this:
Public Property imageUrl As String
In the Form1 you would do like this:
if (textBox3.Text != null)
{
previewImage frm = new previewImage(); frm.imageUrl=TextBox3.Text; frm.ShowDialog(this);
}