Мне нужен класс, который имитирует элемент управления TextBox, но не является элементом управления, а вместо него выполненным пользователем компонентом или элементом.Пользовательский текстовый блок Компонент/элемент (не элемент управления)
Создание похоже на повторное создание колеса, так как я вижу их везде. Например, в любом современном веб-браузере текстовые поля не являются элементами управления. Большинство элементов управления Winforms, особенно элементов управления ToolStrip, таких как ToolStripTextBox, имеют элементы, которые ведут себя как текстовые поля (но не являются элементами управления).
Я предполагаю, что Microsoft не изобретает колесо для каждого элемента управления, который они делают. Но, скорее всего, их код является проприетарным и не публичным.
Кто-нибудь знает об этом с открытым исходным кодом? Я знаком с GDI + рисунком, но текстовое поле не является тривиальной задачей, когда вы рассматриваете позиционирование, выбор и вставку текста.
Любые указатели на то, как писать код самостоятельно, будут оценены, например, как рассчитать символ в данной точке. Должен ли я создать таблицу поиска для измеренной ширины каждого возможного символа? Или цикл через MeasureString, чтобы учесть пространство форматирования?
Точно, что я искал, спасибо! –