Można użyć VisualTreeHelper
klasę (msdn) i metody statycznej ToolTipService.SetShowOnDisabled
(msdn).
Stworzyłem prostą klasę do iteracji przez wszystkie elementy i ustawię właściwość ShowOnDisabled
na True
.
class ToolTipServiceHelper
{
public void EnumVisual(Visual myVisual)
{
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(myVisual); i++)
{
Visual childVisual = (Visual)VisualTreeHelper.GetChild(myVisual, i);
ToolTipService.SetShowOnDisabled(childVisual, true);
EnumVisual(childVisual);
}
}
}
Przykład użycia:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
ToolTipServiceHelper ttsh = new ToolTipServiceHelper();
ttsh.EnumVisual(this.Content as Visual);
}
}
zawsze można utworzyć styl 'FrameworkElement', które nie odnoszą się do wszystkich elementów w drzewie wizualnych? –