从 Form1 更新 Form2 对象

Update Form2 object from Form1

我有下面的代码,可以在从第二个表单更新 Form1 中的对象时使用。但是,当尝试从 Form1 更新 Form2 中的对象时,它不会以相反的方式工作?

表格 2 代码;

   namespace testProject
{
    public partial class comPortWindow : Form
    {
        public static comPortWindow form = null;

        public comPortWindow()
        {
            InitializeComponent();
        }

        public static void comportLogText(String text)
        {
            if (form != null)
                form.updateRichTextBox1(text);
        }

        private void updateRichTextBox1(String text)
        {
            richTextBox1.Text = text + " : " + DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss.fff") + "\r\n" + richTextBox1.Text;
            richTextBox1.ScrollToCaret();
        }
    }
}

表格 1 代码;

comPortWindow comPortWindow = new comPortWindow();
comPortWindow.Show();
comPortWindow.comportLogText("hello");

显示表格 2,但富文本框中未显示测试。

反之亦然,所以可能与 Form1 启动时 Form2 不存在有关。

表格 2 代码:

public partial class comPortWindow : Form
{

    public comPortWindow()
    {
        InitializeComponent();
    }

    public void comportLogText(string text)
    {
            updateRichTextBox1(text);
    }

    private void updateRichTextBox1(string text)
    {
        richTextBox2.Text = text + " : " + DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss.fff") + "\r\n" + richTextBox2.Text;
        richTextBox2.ScrollToCaret();
    }
}

表格 1 代码:

    comPortWindow comPortWindow = new comPortWindow();
    comPortWindow.Show();
    comPortWindow.comportLogText("hello");