0

プログラムを書きます。メインフォームに新しいフォームを作成し、サブフォームのリッチテキストフィールドで値を取得および設定する方法がわかりません。[新しいファイル プログラム] をクリックすると、trah 関数が使用されます。

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

開いているウィンドウが多数ある場合、各ウィンドウで richTextBox にアクセスできません。

どうやってするか?

4

2 に答える 2

0

通常、コントロールは protected accesses 修飾子を使用してフォームに追加されます。次に、外部から値を取得するには、各フォームにパブリック プロパティを作成してテキストを公開する必要があります。

public string RichText{
    get{ return myTextBox.Text;}
}
于 2013-08-29T09:47:54.367 に答える
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);
}

子が親を編集する必要がある場合は、いくつかの方法があります。おそらく、設計上最も優れているのは Events を使用することです:

  public delegate void EditHandler();
  public event EditHandler edit;
于 2013-08-29T09:51:13.477 に答える