PropertyGrid ObjectSelectorEditor value
Bonjour
J'utilise un PropertyGrid alimenté par une classe assez simple.
J'ai "décoré" l'un des attribut pour l'afficher sous la forme d'une liste déroulante.
La classe d'édition :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
public class Combo_MC : ObjectSelectorEditor
{
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
return UITypeEditorEditStyle.DropDown;
}
protected override void FillTreeWithData(Selector Selector1, ITypeDescriptorContext ITypeDescriptorContext1, IServiceProvider IServiceProvider)
{
Selector1.Nodes.Clear();
Selector1.AddNode("0 - Aucun", 0, null);
foreach (MC MC1 in GD.MC_List_Courant)
{
Selector1.AddNode(MC1.int_MC + " - " + MC1.str_MC, MC1.int_MC, null);
}
}
//public override bool IsDropDownResizable
//{
// get { return true; }
//}
}//Combo_MC |
L'utilisation de cette classe sur l'attribut :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
public class File
{
private int m_int_MC1;
[DisplayName("MC 1")]
[Category("Divers")]
[Description("Motif/Compétence 1")]
[Editor(typeof(Combo_MC), typeof(UITypeEditor))]
public int int_MC1
{
get { return m_int_MC1; }
set { m_int_MC1 = value; }
}
}//File |
Cela fonctionne très bien sauf que je ne sais pas comment afficher l'étiquette (str_MC) plutôt que la valeur (int_MC) comme c'est la cas.
Merci d'avance