「((Form1)Owner).textBox1」とか「this.textBox1.Text」は変数に入れとけよ
Regex.MatchかString.IndexOfかどちらかに決めろよ。「.*」とか入力されたら困るだろうが。


これでいいか?

//検索
private void button1_Click(object sender, System.EventArgs e){
  string s = textBox2.Text;//検索する文字列
  if(textBox1.SelectionStart == textBox1.Text.Length){
  MessageBox.Show(this, "最後です");
  return;
  }
  int i = textBox1.Text.IndexOf(s, textBox1.SelectionStart+1);
  if(i == -1){
  MessageBox.Show(this, "下には見つかりません");
  }
  else{
  textBox1.Select(i, s.Length);//文字列を選択
  textBox1.Select();//アクティブにする
  }
}

//置換
private void button2_Click(object sender, System.EventArgs e){
  textBox1.SelectedText = textBox3.Text;
}