Я слежу за документами по созданию расширений разметки XAML, а в разделе «Поставщики услуг» упоминается свойство SimpleValueTargetProvider.ParentObjects
. Это свойство недоступно, поскольку интерфейс IProvideParentValues, который наследует SimpleValueTargetProvider
равен internal
.
По какой-то причине VS2017 intellisense предоставляет свойство во время отладки, но не позволяет вам кодировать с ним. Это свойство ParentObects
было бы очень полезно. Как я могу получить к этому доступ?
Вы не должны использовать SimpleValueTargetProvider
и ожидать, что этот тип будет возвращен всякий раз, когда вы запрашиваете IProvideValueTarget
. Возвращаемый serviceProvider может зависеть от контекста и от того, включен ли XamlC.
Смысл ParentObjects
том, чтобы реализовать IReferenceProvider
, вы можете найти там то, что вам нужно. У нас нет планов открывать ParentObjects
как его создание довольно дорого, и мы все еще пытаемся понять, сможем ли мы его избежать.
Надеюсь, поможет
Документы следует обновить, чтобы в этом случае на это не ссылались.
Я просмотрел IReferenceProvider, и это мне не поможет. Мне нужно иметь возможность идентифицировать родительскую иерархию TargetObject из IMarkupExtension. Мне нужен доступ ко всем типам, чтобы я мог искать тот, который мне нужен, на основе наследования type'e, а не имени. Любые идеи?
@StephaneDelcroix Я должен согласиться, у меня также есть несколько сценариев, в которых мне нужно оценить родительские объекты ... было бы действительно здорово открыть этот API
Самый полезный комментарий
@StephaneDelcroix Я должен согласиться, у меня также есть несколько сценариев, в которых мне нужно оценить родительские объекты ... было бы действительно здорово открыть этот API