Mamy mechanizm językowy, który powraca za pośrednictwem naszych stron XAML po załadowaniu, sprawdza każdy element pod kątem właściwości Tag i wykorzystuje jego wartość do pobrania zasobu napisów, aby zastosować go do elementu. Obecnie nie obsługuje podpowiedzi i musimy mieć określony kod na każdej stronie, aby zastosować do nich pomniejszone zasoby. Próbuję dodać tę funkcjonalność do naszego mechanizmu rekursywnego.Jak programowo uzyskać dostęp do ToolTipService z Silverlight FrameworkElement?
Więc powtarzam przez drzewo i dla każdego elementu, który jest FrameworkElement
, chcę wiedzieć, czy ma on ToolTipService i jeśli tak, czy to ToolTipService ma element ToolTip. Jeśli tak, chcę odzyskać właściwość Tag, jeśli istnieje, i ustawić właściwość Zawartość z wartością, której szukam przy użyciu tego znacznika. Mój problem polega na tym, że nie potrafię określić, czy istnieje etykieta narzędzi i dostęp do niego.
Oto przykład pokazujący element, w tym przypadku obraz. Jeśli zajmuję się ponownym przeglądaniem drzewa, a bieżącym elementem jest obraz, w jaki sposób mogę dostać się do ToolTip?
<Image x:Name="DateRangeSelectorButton" Grid.Column="0" Source="Images/OvalClock.png" Margin="2,0,2,0" Cursor="Hand">
<ToolTipService.ToolTip>
<ToolTip Tag="dttlDateRangeSelectorButtonTooltip"/>
</ToolTipService.ToolTip>
</Image>
Doskonałe. Dokładnie to, czego potrzebowałem. Nie myślałem o poszukiwaniu statycznych metod/właściwości; właśnie patrzyłem na właściwości elementu, z którym pracowałem. Coś do zapamiętania na przyszłość. –
nie są statyczne, są dołączone właściwości zależności (są zdefiniowane przez inną klasę, a nie UOWY i są do niej dołączone) –