从 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");
我有下面的代码,可以在从第二个表单更新 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");