Если просто перехватывать нажатые клавиши и рендерить текст + по таймеру рендерить мигающую черточку (курсор). Так ли все просто или есть подводные камни?
Возьмем минимальный вариант как Paint.Net — там нельзя выделять текст.
Вот что еще вижу навскидку:
1. Обработка клавиш вперед/назад (курсор вклинивать между буквами).
2. Обработка удаления символа (бекспейс и делит).
3. Обработка нажатия мыши и вклинивание курсора в указанное место.
4. Обработка клавиш Ctrl+C.
Интуиция подсказывает, что не все так просто. Что я забыл?