我使用的是Windows窗体。
我只有一个Frame。在这个Frame中,我将一些控件组织在一起。其中一行中的控件属于一起(它们形成一个对象)。总体而言,我有五行,具有相同的控件。
例如:姓名、年龄、收入等(在一行中)有下拉列表、复选框、NumicUpDown等
我现在需要知道一种方法来将它们“绑定”在一起。同样的方法也适用于事件。因为现在我会为每个不同的控件创建一个事件,然后在控件名称的末尾用一个数字来区分它们,这会相当烦人。然后从中生成对象。
我有什么方法可以不生成几十个事件,并指示一行中的所有内容都属于一起?
3条答案
按热度按时间ufj5ltwl1#
要在表单(而不是框架)上将它们组合在一起,请将它们全部放在一个面板上。
要对所有事件使用相同的事件处理程序,只需订阅相同的事件处理程序。(使用设计器-选择事件,然后从下拉列表中选择。要从代码中执行此操作-只需执行
YourControl2.EventName += YourControl1.EventName
。)请注意,这并不可能对每种类型的控件和每种事件都使用。只有当事件具有相同的签名时才有可能。t0ybt7op2#
您可以轻松地建立UserControl。以鼠标器右击按一下项目或项目中的文件夹,然后选取a UserControl a。接着,您可以在设计工具中,将控件加入至该项目,就像加入表单一样。
编译完项目后,UserControl将出现在工具箱的顶部,您可以将其拖放到窗体上。
这样会建立一个代表一列的使用者控件,并为表单的每一列加入一个。您也可以将其他属性、方法和事件加入至使用者控件类别。它们会自动出现在属性视窗中。
但在您的情况下,DataRepeater Control for Windows Forms将是合适的。它是Visual Basic Power Packs的一部分,但在C#项目中工作得很好。
vd8tlhqk3#
把你所有的控件放在一个面板里。2这样你就可以把更多的单选按钮组合在一起,这样他们就可以知道一个对应另一个。3然后你就可以在他们之间切换,这样你就可以变成你想要的了。