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?

Était-ce utile?

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top