如何访问C#中另一个接口面板内的组合框?

如何访问C#中另一个接口面板内的组合框?,c#,winforms,panel,C#,Winforms,Panel,我有一个父窗体,其中包含调用不同用户控件的面板。 例如,文件是这样的 Form1.cs->包含主面板 selectioninterface.cs->包含一个组合框,可动态更改面板(interface1或interface2) 接口1.cs interface2.cs->这些包含一个单独的面板,在其面板内形成1.cs调用 我目前正在使用这个循环遍历form1面板 foreach(Control control in panel.Controls) { if(control.

我有一个父窗体,其中包含调用不同用户控件的面板。 例如,文件是这样的

Form1.cs->包含主面板

selectioninterface.cs->包含一个组合框,可动态更改面板(interface1或interface2)

接口1.cs interface2.cs->这些包含一个单独的面板,在其面板内形成1.cs调用

我目前正在使用这个循环遍历form1面板

    foreach(Control control in panel.Controls) {
        if(control.GetType() == typeof(selectioninterface))
        {

        }
}

我得到了这个部分,但我需要访问位于interface1和interface2面板内的文本框和组合框信息。如何访问它们?

我建议在接口中定义事件,并在父窗体中处理事件。在事件中,将值作为参数传递

public delegate void MyEventHandler(object value);

event MyEventHandler MyEvent;

并在控件值更改时引发事件。

我建议在接口中定义事件,并在父窗体中处理事件。在事件中,将值作为参数传递

public delegate void MyEventHandler(object value);

event MyEventHandler MyEvent;
并在控件值更改时引发事件。

您可以使用

this.Controls.Find("YourControlName", true);
如果指定的控件存在,这将返回一个控件集合

您可以使用

this.Controls.Find("YourControlName", true);

如果指定的控件存在,这将返回一个控件集合

将控件强制转换为正确的类型并使控件公开,这样您就可以从代码中访问它们。将控件强制转换为正确的类型并使控件公开,这样您就可以从代码中访问它们。