创建控件后,自动将其添加到特定面板

After Creating a Control, automatically add it to specific panel

我有 "Buttons" 用于菜单目的的用户控件。这些按钮将自动添加到右侧面板。

所以基本上,如果我写:

MenueButton button1 = new MenueButton();

该按钮将自动添加到 GUI 窗体上的 MenuePanel。 (也许一些简单的动作处理程序?)

有办法实现吗?

试试

 MenueButton button1 = CreateButton();
 button1.Click+=...

 MenueButton button2 = CreateButton();
 button2.Text="ABC";

 MenueButton CreateButton()
 {
   MenueButton b= new MenueButton();
   panel.Controls.Add(b);
   return b;
 }

这样 CreateButton 函数会创建按钮并将其自动添加到面板,您可以在代码中使用新创建的按钮

如果你想对按钮做同样的事情,你可以给你的函数添加参数

MenueButton button1 = CreateButton("Button 1 Text");
button1.Click+=... 

MenueButton button2 = CreateButton("XYZ");


MenueButton CreateButton(string buttonText)
{
    MenueButton b= new MenueButton();
    b.Text = buttonText;
    panel.Controls.Add(b);
    return b;
}