Desafortunadamente, no hay una manera fácil de hacerlo. Lo ideal sería establecer ToolTipService.InitialShowDelay en FrameworkElement y dejar que se propague desde allí, pero resulta que no parece funcionar.
En su lugar, se puede establecer para cada tipo de control que desea ponerlo en, por ejemplo:
<Style TargetType="RibbonButton">
<Setter Property="ToolTipService.InitialShowDelay" Value="2000"/>
</Style>
<Style TargetType="RibbonToggleButton">
<Setter Property="ToolTipService.InitialShowDelay" Value="2000"/>
</Style>
<Style TargetType="RibbonDropDownButton">
<Setter Property="ToolTipService.InitialShowDelay" Value="2000"/>
</Style>
etc.
Aunque esta es una forma bastante detallado de hacerlo , al menos, solo tiene que configurarlo en cada tipo de control y no en cada control en sí mismo, y si lo está utilizando en la cinta de opciones, entonces solo hay un puñado de controles para comenzar.
ahorrar un poco de molestia si alguna vez desee cambiar el valor, es posible que desee arquitecto el código anterior utilizando un valor de recurso:
<sys:Int32 x:Key="ToolTipInitialShowDelay">2000</sys:Int32>
<Style TargetType="RibbonButton">
<Setter Property="ToolTipService.InitialShowDelay"
Value="{StaticResource ToolTipInitialShowDelay}"/>
</Style>
<Style TargetType="RibbonToggleButton">
<Setter Property="ToolTipService.InitialShowDelay"
Value="{StaticResource ToolTipInitialShowDelay}"/>
</Style>
<Style TargetType="RibbonDropDownButton">
<Setter Property="ToolTipService.InitialShowDelay"
Value="{StaticResource ToolTipInitialShowDelay}"/>
</Style>
Alternativamente, si no está ya utilizando estilos BasedOn, se podría acortarlo a:
<Style x:Key="ToolTipDefaults">
<Setter Property="ToolTipService.InitialShowDelay" Value="2000"/>
</Style>
<Style TargetType="RibbonButton" BasedOn="{StaticResource ToolTipDefaults}"/>
<Style TargetType="RibbonToggleButton" BasedOn="{StaticResource ToolTipDefaults}"/>
<Style TargetType="RibbonDropDownButton" BasedOn="{StaticResource ToolTipDefaults}"/>
La limitación de este enfoque es que un estilo sólo puede basarse en un estilo padre, por lo que si usted ya está usando este patrón, usted no será capaz de hacer esto.
Busco a una solución de esa manera (estilo solamente) pero sin tener que asignar a los elementos clave FieldStyle. –