У меня есть класс ToolTipProvider
у которого есть метод
string GetToolTip(UIElement element)
, которая будет возвращать конкретную подсказку для указанного элемента UIElement, основываясь на различных факторах, включая свойства самого UIElement, а также поиск документации, которая может быть динамически изменена. Он также, вероятно, будет выполняться в потоке, поэтому при первом запуске формы всплывающие подсказки будут выглядеть как визуальная студия «Кэш документов все еще создается», а затем заполняется в фоновом режиме.
Я хочу разрешить использовать его в любой форме wpf с минимальными усилиями разработчика. По сути, я хочу вставить ObjectDataProvider
ресурс в Window.Resources
, чтобы обернуть мой ToolTipProvider
объект, затем я думаю, что мне нужно создать всплывающую подсказку (называемую, например, MyToolTipProvider
) в ресурсах, которые ссылаются на этот ObjectDataProvider, а затем элемент, который требует этой функции всплывающей подсказки, это был бы случай ToolTip="{StaticResource MyToolTipProvider}"
однако я не могу понять, а) как связать сам фактический элемент с MethodParameters объекта-поставщика данных, или б) как заставить его вызывать метод каждый раз, когда открывается всплывающая подсказка.
Какие-нибудь идеи / указатели на общую схему мне нужны? Не ищите полного решения, просто идеи от более опытных