Привязка ObjectDataProvider к свойству вместо метода
-
13-09-2019 - |
Вопрос
Предположим, у вас есть следующий класс:
class ProcessController
{
public List<Process> Active { get { ... } }
...
public List<Process> GetProcesses() { ... }
}
Я могу использовать GetMethod
чтобы связать ObjectDataProvider
к тому GetProcesses()
способ:
<ObjectDataProvider x:Key="pList"
MethodName="GetProcesses"
ObjectType="{x:Type local:ProcessController}"/>
Мой вопрос в том, могу ли я также привязаться к свойству Active
?
Если выяснится, что я могу сделать следующее:
<ObjectDataProvider x:Key="pList"
MethodName="get_Active"
ObjectType="{x:Type local:ProcessController}"/>
Но почему-то это кажется неправильным.
Есть ли какой-нибудь более чистый или "правильный" способ доступа к свойству вместо вызова метода?
Решение
Вам не нужно привязываться к свойству, просто привяжитесь к объекту и используйте Путь для доступа к свойству
<ObjectDataProvider x:Key="pList"
ObjectType="{x:Type local:ProcessController}"/>
Другие советы
Ответ, данный gcores, не будет работать, если свойство статично, только если оно является членом экземпляра.
Джо Фезер
Не связан с StackOverflow