0

我写程序。它是简单的编辑器链接记事本,在主窗体中创建了新窗体,我不知道如何在子窗体的richTextField 中获取和设置值。当您单击新建文件程序时,请使用 trah 功能。

private void NewWindow()
{
     Form2 f2 = new Form2();
     f2.MdiParent = this;
     f2.Text = "Document " + WindowNumber.ToString();
     WindowNumber++;
     f2.Show();
 }

当我有许多打开的窗口时,我无法在每个窗口中访问richTextBox。

怎么做?

4

2 回答 2

0

如果您希望父表单编辑子表单或相反,我不太明白。

如果您希望父母能够编辑孩子,那么孩子应该公开一个类似 Oscar 示例的方法来编辑,RichTextBox并且父母应该将孩子保存在某处:

List<Form2> frm = new List<Form2>();
private void NewWindow()
{
     Form2 f2 = new Form2();
     f2.MdiParent = this;
     f2.Text = "Document " + WindowNumber.ToString();
     WindowNumber++;
     f2.Show();
     frm.Add(f2);
}

如果孩子应该编辑父母,你有几种方法可以做到。可能最好的设计是使用事件:

  public delegate void EditHandler();
  public event EditHandler edit;
于 2013-08-29T09:51:13.477 回答
0

通常,控件被添加到带有受保护访问修饰符的表单中。然后,要从外部获取它们的值,您需要在每个表单上创建一个公共属性以公开文本。

public string RichText{
    get{ return myTextBox.Text;}
}
于 2013-08-29T09:47:54.367 回答