如何在 WinForms 自定义控件的控件设计器属性中添加组合框?

use*_*291 2 .net c# custom-controls visual-studio winforms

我正在创建一个自定义控件,其属性可以从一组字符串(如“Man, Woman”)中获取值。因此,在控件设计器属性中,我想显示一个包含这两个选项的组合框。

有标准的方法吗?如果不是我应该实施什么?

Cod*_*ray 6

执行此操作的简单方法是将枚举添加到定义属性的可能选择的代码中,然后配置自定义控件的属性以接受该类型的值。属性窗口将自动显示该属性的组合框,其中列出了枚举中的所有可能值。

因此,例如:

public enum Gender
{
    Man,
    Woman,
}

public class MyCustomControl : UserControl
{
    public Gender UserGender { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

  • 如果没有枚举,你如何做到这一点?我希望能够获取表单上所有控件的列表,或者如果我有一个控件,则获取其中的所有子控件,并让用户从属性网格的下拉菜单中选择其中一个。 (2认同)