Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在用户控件和我的主窗体之间进行通信?_C#_Winforms_User Controls - Fatal编程技术网

C# 如何在用户控件和我的主窗体之间进行通信?

C# 如何在用户控件和我的主窗体之间进行通信?,c#,winforms,user-controls,C#,Winforms,User Controls,我的表单上有几个(1-3个)用户控件。我希望能够单击表单上的一个按钮(它不是用户控件的一部分),并让所有3个用户控件都响应。我怎样才能做到这一点呢?如果我理解正确,这就是你所需要做的;只需将一个公共方法添加到用户控件中,并通过按钮按下调用该方法: protected void Button_Click(object sender, EventArgs e) { UserControl1.DoMethod(); UserControl2.DoMethod(); UserContr

我的表单上有几个(1-3个)用户控件。我希望能够单击表单上的一个按钮(它不是用户控件的一部分),并让所有3个用户控件都响应。我怎样才能做到这一点呢?

如果我理解正确,这就是你所需要做的;只需将一个公共方法添加到用户控件中,并通过按钮按下调用该方法:

protected void Button_Click(object sender, EventArgs e)
{
   UserControl1.DoMethod();
   UserControl2.DoMethod();
   UserControl3.DoMethod();
}

public class YourUserControl : UserControl
{ 
   public void DoMethod()
   {
      // Show your ListBoxes
   }
}

如果我理解正确,这就是你所需要做的;只需将一个公共方法添加到用户控件中,并通过按钮按下调用该方法:

protected void Button_Click(object sender, EventArgs e)
{
   UserControl1.DoMethod();
   UserControl2.DoMethod();
   UserControl3.DoMethod();
}

public class YourUserControl : UserControl
{ 
   public void DoMethod()
   {
      // Show your ListBoxes
   }
}

你说的“响应”是什么意思?我想让每个控件都用自己的控件来做事情。例如,按下主窗体上的一个按钮,用户控件上会出现3个列表框(每个列表框上有1个)。我希望您提出相反的问题:)如何让窗体对用户控件上单击的按钮做出响应?您所说的“响应”是什么意思?我希望每个控件都使用自己的控件来完成一些事情。例如,按下主窗体上的一个按钮,用户控件上会出现3个列表框(每个列表框上有1个)。我希望您提出相反的问题:)如何使窗体对用户控件上单击的按钮作出响应?谢谢!现在我觉得自己像个白痴!这就是我整晚熬夜时发生的事情。谢谢!现在我觉得自己像个白痴!这就是我整晚熬夜时发生的事情。