On a any widget you can call SetToolTip and pass it an instance of any widget you want to use as the tooltip. You could also implement a binding for the Tooltip property, and your function will be called to factory the widget needed on demand. More efficient for very expensive tooltips that need to be constructed (i.e diablo inventory item info dump), since they’ll be created on demand.