高分赏格求大神们帮忙

高分悬赏求大神们帮忙
求大神帮忙。要解决的问题如下:
有两个窗体,主窗体Form1,子窗体Form2。Form1中有个TextBox1,Button1,子窗体Form2中有Button2,
假如我点击Button1,弹出Form2,然后我点击Button2后,程序会读取Bin里面的一个log.text文件内容,我想然后将读取的内容显示在Form1中的TextBox1中。也就是跨窗体显示。现在假如读取内容在Form2中显示,我可以做到,但怎么在Form1上显示呢?这个是截图就是这样的效果高分赏格求大神们帮忙
textbox

------解决方案--------------------
参考这个http://blog.csdn.net/bdstjk/article/details/7005798
------解决方案--------------------

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Form2 f2 = new Form2();
            f2.ShowLog += new EventHandler<LogEventArgs>(f2_ShowLog);
            f2.Show();
        }
        void f2_ShowLog(object sender, LogEventArgs e)
        {
            textBox1.Text = e.Text;
        }
    }
}


namespace WindowsFormsApplication1
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            OnShowLog(new LogEventArgs("log log log log log"));
        }
        private void OnShowLog(LogEventArgs e)
        {
            if (ShowLog != null) ShowLog(this, e);
        }
        public event EventHandler<LogEventArgs> ShowLog;
    }
    public class LogEventArgs : EventArgs
    {
        public string Text { get; private set; }
        public LogEventArgs(string log)
        {
            Text = log;
        }
    }
}

------解决方案--------------------
方法很多啊,可以在Form2中以各种方式找到Form1窗体的TextBox1控件后赋Text值。

这里说一下 委托。

在Form2中定义

public delegate void ParentShowText(string txtText);//声明一个委托
public ParentShowText ShowText;//声明事件


其中ParentShowText是委托名,后面是参数,委托名可以随便起,参数可以随便定,调用的时候对应起来就可以了。

在Form1中打开Form2时


private void Button1_Click(object sender, EventArgs e)
{
   Form2 f2 = new Form2();
   f2.ShowText += new Form2.ParentShowText(ShowText_Method);
   f2.Show();
}


Form1不一定是Form2的主窗体
然后在Form1中写一个实现的公共的事件

public void ShowText_Method(string txtText)//参数与Form2中的委托对应起来
  {
      //根据Form2中的传参,实际是在Form1中操纵细节
      TextBox1.Text = txtText;
 }


在Form2中的Button的点击事件

private void Button2_Click(object sender, EventArgs e)
{
     string logs = "";//从txt文件中读取
     ShowText(logs);
}


好了,大功告成!