我有这个属性的默认值。任何人都可以帮助我如何有价值选择的下拉菜单?我希望下拉列表中的值仅显示1-10
...
private int _margin = 10;
[Bindable(true), Category(_category), DefaultValue(10)]
public int MarginWidth
{
get { return _margin; }
set { _margin = Math.Abs(value); Invalidate(); }
}
无论如何,你怎么称呼[Bindable(true), Category(_category), DefaultValue(10)]
只是谷歌搜索参考的关键?
答案 0 :(得分:1)
方括号中的每个项目都是Attribute
s,例如。 BindableAttribute
,CategoryAttribute
和DefaultValueAttribute
。
简而言之,属性用于将metadata附加到方法。什么信息完全可以由属性的创建者定义。可以通过反射及其访问的数据再次获得这些属性。上面链接的Attribute
类的文档包含大量有关使用情况的信息等。
答案 1 :(得分:-1)
您可能正在寻找[TypeConverterAttribute(typeof(MyDropDownConverter))]
您可以查看Getting the Most Out of the .NET Framework PropertyGrid Control,在该文章中有一个标题To provide simple drop-down property support
,向您展示如何让MyDropDownConverter
做正确的事。