0

私はWindowsアプリケーションを持っています。

Windowsアプリケーションには、XMLライブラリがあります。

  public NetspotXMLLibV1 XMLLib;

    public Form1()
    {
        InitializeComponent();
        XMLLib = new XmlLibrary.NetspotXMLLibV1();
    }

カスタムコントロールもあります。

そのカスタムコントロールには、ボタンがあります。

SelectWidgitWindow widgit = new SelectWidgitWindow();
widgit.ShowDialog();

ボタンをクリックすると、新しいウィンドウが開きます。私はこの新しいウィンドウでいくつかのことをします。新しいウィンドウのボタンをクリックすると、Form1ウィンドウにデータを保存したい

新しいウィンドウ(SelectWidgitWindow)でこれにアクセスするにはどうすればよいですか?

つまり

form1.XMLLib.Add(ItemForProcessing);

また

Windows(1).XMLLib.Add(ItemForProcessing);

助けてください

4

2 に答える 2

0

いくつかの方法:

1)親フォームで抽出するアイテムを子フォームのプロパティとして公開します。親フォームのコードでは、ShowDialogreturnsのときに、保存する値をプロパティから取得できます。

2)親フォームへの参照をフォームに渡します(おそらくそれが構築されたとき)。次に、子フォームはいくつかのメソッドを呼び出すか、親フォームにいくつかのプロパティを設定できます。これは、子を親フォームに結合するため、他のフォームから呼び出すことができないため、好ましくないことに注意してください。

于 2012-03-21T13:34:05.860 に答える
0

新しいフォームの所有者を渡すことができるShowDialogオーバーロードを使用します。

Form2 f = new Form2();
f.ShowDialog(this.Parent);

およびForm2の場合:

((Form1)Owner).MyProperty = 11;
于 2012-03-21T13:38:08.103 に答える