在自定义组件中添加枚举的下拉列表

时间:2009-09-23 16:06:44

标签: c# .net properties

我正在创建一个.net Webtest自定义提取规则。我希望我的用户能够从Visual Studio的“属性编辑”视图中的下拉列表中选择枚举值。

我可以设法自定义整数/字符串属性的DisplayName,Description,DefaultValues而不会出现问题。但是我无法设置ENUM值出现在属性编辑器中。

你怎么能这样做?

示例:

public Enum FooBarEnum
{
   Foo,
   Bar,
   FooBar,
   BarFoo
}

public class CustomExtractionRule : ExtractionRule
{

    [DescriptionAttribute("Description...")]
    [DisplayNameAttribute("Display Name...")]
    [DefaultValue("foo")]
    public String Param1
    {
       get; set;
    }

    [DisplayNameAttribute("Display Name...")]
    //[  how do I Make it appear as a  drop down list!!]
    public FooBarEnum Param2
    {
       get; set;
    }


    public override void Extract(object sender, ExtractionEventArgs e)
    {
        ...
    }

}

如果我编译它,我将在Extraction Rule的属性编辑器中看到一个Param1属性...但是它不会显示枚举...如何绑定它?

谢谢,

1 个答案:

答案 0 :(得分:0)

您可以尝试创建ObjectSelectorEditor类型的子类,并将其传递给您的属性上设置的[EditorAttribute]。