Die Bindung an eine Eigenschaft Object anstelle eines Verfahrens
-
13-09-2019 - |
Frage
Angenommen, Sie haben folgende Klasse:
class ProcessController
{
public List<Process> Active { get { ... } }
...
public List<Process> GetProcesses() { ... }
}
Ich kann die GetMethod
verwenden, um eine ObjectDataProvider
an die GetProcesses()
Methode zu binden:
<ObjectDataProvider x:Key="pList"
MethodName="GetProcesses"
ObjectType="{x:Type local:ProcessController}"/>
Meine Frage ist, kann ich binden auch an die Eigenschaft Active
?
Wenn herausgefunden, dass ich folgendes tun:
<ObjectDataProvider x:Key="pList"
MethodName="get_Active"
ObjectType="{x:Type local:ProcessController}"/>
Aber irgendwie hat das nicht richtig an.
Gibt es eine sauberere Weg oder „richtigen“ Weg, auf eine Eigenschaft zuzugreifen, anstatt ein Verfahren zum Aufrufen?
Lösung
Sie brauchen nicht auf eine Eigenschaft zu binden, binden nur an das Objekt und verwenden Sie den Pfad auf die Eigenschaft zuzugreifen
<ObjectDataProvider x:Key="pList"
ObjectType="{x:Type local:ProcessController}"/>
Andere Tipps
Die Antwort von gcores gegeben wird nicht funktionieren, wenn die Eigenschaft statisch ist, nur, wenn es eine Instanz Mitglied ist.
Joe Feser
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow