C#如何将不同的表单控件组合在一起?

时间:2016-06-22 20:18:13

标签: c# winforms event-handling

我正在使用Windows窗体。

我只有一个框架。在这个框架中,我组织了一些控件。一行中的控件属于一起(它们形成一个对象)。总的来说,我有五个行,具有相同的控件。

例如:姓名,姓氏,年龄,收入等(一行) 有下拉列表,复选框,NumicUpDown等

我现在需要知道将它们“绑定”在一起的方法。同样重要的事件。因为目前我会为每个不同的控制事件制作一个事件,然后在控制名称的末尾用数字来消除它们,这会相当烦人。然后从那里生成Object。

我有什么方法可以不制作数十个事件,并指出一行中的所有内容都属于一起?

2 个答案:

答案 0 :(得分:0)

将它们组合在表格(不是框架)上 - 将它们全部放在一个面板上。

要为所有这些使用相同的偶数处理程序 - 只需订阅相同的处理程序即可。 (使用设计器 - 选择事件,然后从下拉列表中选择。要从代码中执行此操作 - 只需执行YourControl2.EventName += YourControl1.EventName。)请注意,这不适用于每种类型的Control和每个事件。只有事件具有相同的签名才有可能。

答案 1 :(得分:0)

您可以轻松创建UserControl。右键单击项目或项目中的文件夹,然后选择UserControl。然后,您可以在设计器中为其添加控件,就像表单一样。

编译完项目后,您的UserControl将显示在工具箱的顶部,您可以将其拖放到表单上。

像这样会创建一个表示一行的用户控件,并为表单的每一行添加其中一行。您还可以向用户控件类添加其他属性,方法和事件。它们将自动显示在属性窗口中。

但在你的情况下,DataRepeater Control for Windows Forms是合适的。它是Visual Basic Power Packs的一部分,但在C#项目中也能正常工作。