Я пытаюсь сделать свой собственный контроль для .NET с помощью VB, и у меня возникают проблемы с достижением того, что я хочу сделать. Фактически, я делаю элемент управления, который наследуется от класса textbox, и единственное изменение, которое я пытаюсь внести в него, заключается в том, что если элемент управления визуально заполнен, пользователь больше не может печатать. Итак:
- Полосы прокрутки никогда не должны появляться.
- Расширенный TextBox может быть многострочным или однострочным.
- Расширенный TextBox может иметь разные шрифты и размеры шрифтов.
Прямо сейчас, я использую технику - graphics.measurestring, чтобы получить sizeF, содержащий ширину и высоту моей строки, чтобы сравнить ее с высотой и шириной моего элемента управления textbox. Все это в событии KeyDown (я не знаю, что это лучшее решение). Я могу заставить его работать нормально для ширины, но я не могу получить высоту прямо в многострочном текстовом поле. Если кто-нибудь когда-нибудь работал с этим материалом, мне нужно было бы объяснить, как это сделать. Спасибо.