Accesseur pour un DisplayMember de combo bindé
Bonjour
Voici une question idiote mais dont la reponse pourrait etre instructive
Il est deja arrivé a beaucoup je pense de voir un combo bindé se remplir non pas des valeurs attendue mais d'une enumeration de type des element sous-jacent de la source
Genéralement il s'agit d'un simple oubli de déclaration du DisplayMember !
Mais il y a plus subtil : ca peut ne pas marcher meme si le DisplayMember est déclaré
Et j'en arrive a ma question
Ci dessous je declare une liste composée d'element de type C_ADR
Et je bind la liste a un combo !
Et ca marche pas : le combo ne m'affiche pas les valeurs des ID;
Pour les avoir, je dois ajouter un bete accesseur a ID
Code:
public int ID { get; set; }
Ma question : qu'est ce que cet accesseur ajoute dans la sauce pour que le combo puisse savoir que "ID" doit acceder a ID;
Je saus que c'est comme ca mais j'aimerais savoit "comment" dans les coulisses !
Car j'avoue qu'en plus je suis genéralement avare des accesseurs !
Venant du C je n'ai pas pris l'habitude d'en mettre systématiquement partout !
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public class C_ADR
{
public int ID;
public char TP;
}
public class C_MATRIXADR : C_ADR
{
public List<C_ADR> Missions = new List<C_ADR>();
}
public List<C_MATRIXADR> lstTecAdr = new List<C_MATRIXADR>();
cmbAdr.DataSource=lstTecAdr;
cmbAdr.DispayMamber="ID"; |