设计师财产|名称和值

时间:2017-01-17 12:55:27

标签: c# properties designer designtime-attributes

首先我做了什么(更容易解释我想要得到的):

我创建了一个简单的用户控件,其设计属性为List<bool>

[Browsable(true)]
[Description("Select some.")]
[Category("SelectionTest")]
public List<bool> BoolList = new List<bool>();

将此控件拖到我的表单上并检查设计器时,我得到了这个:

enter image description here

这个将打开一个编辑:

enter image description here

目标:

我想添加另一个string类型的属性,因此它会显示为左侧的显示文本。我不在乎它是否可编辑。

所以一般来说,我需要像List<string, bool>这样的东西,这是不可能的,我知道。很遗憾,DictionaryTuple无效。打开编辑器时,它仍然是显示为Value: (string, bool)的单个值。

任何人都知道如何将另一个属性放入正确的窗口或更改bools的描述?

非常感谢这里的每一个帮助。我想这将是非常好的知识。想想可能性......

谢谢!

1 个答案:

答案 0 :(得分:1)

我知道您想要名为布尔值

dummies = pd.get_dummies(df.level)
d = dummies.mask(dummies == 0).bfill(1).eq(1)
df.set_index('level', append=True).names.unstack().ffill().where(d, '')

level       1       2        3        4
0      Name_0                          
1      Name_0  Name_1                  
2      Name_0  Name_1   Name_2         
3      Name_0  Name_1   Name_3         
4      Name_0  Name_1   Name_4         
5      Name_5                          
6      Name_5  Name_6                  
7      Name_5  Name_6   Name_7         
8      Name_5  Name_6   Name_8         
9      Name_5  Name_9                  
10     Name_5  Name_9  Name_10         
11     Name_5  Name_9  Name_10  Name_11
12     Name_5  Name_9  Name_10  Name_12
13     Name_5  Name_9  Name_13         
14     Name_5  Name_9  Name_13  Name_14
15     Name_5  Name_9  Name_13  Name_15

看起来像:

looks like