设计师财产|列出名称和值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计师财产|列出名称和值相关的知识,希望对你有一定的参考价值。
首先我做了什么(更容易解释我想要得到的):
我创建了一个简单的用户控件,其设计属性为List<bool>
。
[Browsable(true)]
[Description("Select some.")]
[Category("SelectionTest")]
public List<bool> BoolList = new List<bool>();
将此控件拖到我的表单上并检查设计器时,我得到:
这个将打开一个编辑器:
目标:
我想添加另一个类型为string
的属性,以便它显示为左侧的显示文本。我不在乎它是否可编辑。
所以一般来说,我需要像List<string, bool>
这样的东西,这是不可能的,我知道。不幸的是Dictionary
和Tuple
没有工作。打开编辑器时,它仍然是一个显示为Value: (string, bool)
的值。
任何人都知道如何将另一个属性放入正确的窗口或更改bools的描述?
非常感谢这里的每一个帮助。我想这将是非常好的知识。想想可能性......
谢谢!
答案
我知道你想要一个名为布尔的人
public partial class UserControl1 : UserControl
{
[Browsable(true)]
[Description("Select some.")]
[Category("Selection Test"), DisplayName("Bool List")]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public List<BoolProperty> BoolList { get; set; } = new List<BoolProperty>();
public UserControl1()
{
InitializeComponent();
}
}
[Serializable]
public class BoolProperty
{
public string Name { get; set; }
public bool Value { get; set; }
public override string ToString()
{
return Name ?? "Empty Boolean Property";
}
}
好像:
以上是关于设计师财产|列出名称和值的主要内容,如果未能解决你的问题,请参考以下文章