Reworked as a custom control.