WPF Grid: Showing Tooltip over Empty Space

You can define a tooltip on a grid (or border), but it will show up only when the mouse hovers over space “occupied” by a grid item. Empty space will not generate the tooltip. E.g.

<Grid ToolTip="Yo!">
   <Rectangle Fill="Yellow" Width="50" Height="50" HorizontalAlignment="Center" VerticalAlignment="Center" />

The tooltip will show only when hovering over a small yellow rectangle in the middle, and not elsewhere in the grid. If you add <Rectangle /> to the grid, it won’t help. The rectangle by default gets null fill brush and sort of “does not count”. If you want to extend the tooltip on the whole grid, do this:

<Grid ToolTip="Yo!">
   <Rectangle Fill="Transparent" />
   ... other items ...

This will ensure the tooltip is visible everywhere in the grid. However, if the grid is large, this looks somewhat weird. The tooltip appears once and does not follow the mouse. Thus, for large grids it may be better to leave things as they are.

The same technique applies to a StackPanel and WrapPanel. Only space actually covered by controls like Label, Button, or Rectangle will have tooltip. Hovering over empty space will not yield a tooltip.

Posted in

Leave a Reply

Your email address will not be published. Required fields are marked *