Descripteur de propriétés personnalisés et des hiérarchies d'aplatissement
-
16-09-2019 - |
Question
J'ai un descripteur de propriété personnalisé que j'utilise pour prendre en charge les hiérarchies d'objets d'aplatissement.
Pour accomplir cela, j'ai sous-classé PropertyDescriptor
et je stocke une liste liée à la propriété "suivante" (enfant) pour laquelle je souhaite récupérer la valeur.
Cela me permet de lier les sous-propriétés à une grille (exporter vers Excel, peu importe) de manière "plate".
par exemple. Grille (propriété liée, légende)
Col1:Customer.Name(Customer)
Col2:Customer.Address(Address)
Col3:Customer.OutstandingOrders.Count(Outstanding Orders)
Le problème est qu'une fois que j'ajouterai une colonne avec un nom en double, quel que soit le fait qu'il a une légende unique, il récupérera la propriété pour la 1ère mais mettra toujours l'en-tête correcte:
Col4:Customer.Company.Name(Company)
Des idées?
La solution
Le problème est qu'une fois que j'ajouterai une colonne avec un nom en double, quel que soit le fait qu'il a une légende unique, il récupérera la propriété pour la 1ère mais mettra toujours l'en-tête correct.
Pouvez-vous clarifier cette ligne? Je l'ai déjà fait, mais j'ai utilisé le chemin de navigation dans le nom imaginaire - c'est-à-dire que je pourrais avoir le PropertyDescriptor.Name
rapport Customer_Company_Name
plutôt que Name
, et utilisez le .DisplayName
pour signaler quelque chose de plus lisible.