Ich habe ein Datagrid von einer Linq-Abfrage gefüllt. Wenn sich die fokussierte Zeile im Datagrid ändert, muss ich eine Variable festlegen, die einer der Eigenschaften in diesem Objekt entspricht.Wie kann ich einen Wert einer Eigenschaft von einem anonymen Typ erhalten?
Ich habe versucht ...
var selectedObject = view.GetRow(rowHandle);
_selectedId = selectedObject.Id;
... aber der Compiler überhaupt für diese ist es egal („Embedded-Anweisung kann keine Erklärung oder labled Aussage sein“).
Es scheint, als ob die Eigenschaft leicht zugänglich sein sollte. Wenn ich das Objekt zur Laufzeit überprüfe, werden alle Eigenschaften angezeigt, die ich erwarte. Ich weiß einfach nicht, wie ich darauf zugreifen soll.
Wie kann ich auf die Eigenschaft des anonymen Objekts zugreifen?
Edit für Klärungen:
ich zufällig sein mit DevExpress XtraGrid Kontrolle. Ich habe dieses Steuerelement mit einer Linq-Abfrage geladen, die aus mehreren verschiedenen Objekten besteht, so dass die Daten nicht wirklich mit irgendeiner Klasse übereinstimmen, die ich bereits habe (dh ich kann dies nicht auf irgendetwas anwenden).
Ich benutze .NET 3.5.
Wenn ich die Ergebnisse der view.GetRow (rowHandle) Methode sehen bekomme ich einen anonymen Typ, der wie folgt aussieht:
{ ClientId = 7, ClientName = "ACME Inc.", Jobs = 5 }
Mein Ziel ist es, die ClientId von diesem anonymen Typ zu erhalten, so kann ich tun andere Dinge (wie zum Beispiel ein Formular mit diesem Client-Datensatz laden).
Ich habe ein paar der Vorschläge in den ersten Antworten versucht, konnte aber nicht an einen Punkt gelangen, an dem ich diese ClientId bekommen konnte.
Was ist der genaue Typ der Kennung "view"? – AnthonyWJones
"Ansicht" ist ein GridView-Steuerelement von DevExpress. –