2017-12-21 5 views
0

Ich bin neu in ObjectListView und ich habe nicht gefunden, wie Sie eine Eigenschaft eines Objekts im Modell als AspectName für ObjectListView verwenden.ObjectListView Aspect Name als andere Objekteigenschaft

Zum Beispiel wird die Liste zeigt Cars Namen und ihre Besitzer

public class Person 
{ 
    private string _name; 


    public string Name 
    { 
     get => _name; 
     set => _name = value; 
    } 
} 

public class Car 
{ 
    private Person _owner; 
    private string _name; 

    public Person Owner 
    { 
     get => _owner; 
     set => _owner = value; 
    } 

    public string Name 
    { 
     get => _name; 
     set => _name = value; 
    } 

} 

nennen Wenn ich die AspectName einer Spalte auf Owner.Name es nichts auf der Liste zeigen. Ich habe eine kleine Problemumgehung der Definition einer Eigenschaft OwnerName innerhalb des Car-Modells gemacht, aber ich habe komplexere Modelle, die es schwierig machen, diese Eigenschaft definieren zu müssen.

Gibt es eine Möglichkeit, dass ich das tun kann?

Dank

+0

Besitzer nennen ist „privat“. Erklären Sie es öffentlich und es sollte funktionieren. –

+0

@ Rev1.0 Entschuldigung, hier ist ein einfacheres Modell dessen, was das Objekt in meiner Anwendung ist, und ich habe vergessen, die Owner-Eigenschaft public zu setzen. Im Modell der Anwendung ist der Eigentümer öffentlich. Wie kann ich die Name-Eigenschaft in die ObjectListView einfügen ?. Danke – Cako

Antwort

0

Nach dem, was Sie dann gesagt haben, dies sollte funktionieren. Es muss also ein anderes Problem geben, das dieses Problem verursacht.

Sie könnten versuchen, den AspectGetter programmatisch statt wie folgt zu setzen;

Sie können dann einen Haltepunkt in diesen Code einfügen und sehen, ob und wann er aufgerufen wird und was passiert.

Denken Sie daran, dass Sie müssen definieren/all den Aspekt Getter usw. einstellen, bevor Sie objectListView1.SetObjects

+1

Danke. Das funktioniert – Cako

Verwandte Themen