A text control is essentially a view that displays an editable text field and a label (providing basic layout capabilities) and handles input events. You can also enable more features--for example, adding a menu to set styles on character input--and create controls that generate actions based on user input.