Мне нужно ограничить текст строки 1, введенный в редакторе хранилища XtraGrid, до фиксированной ширины столбца. Я не могу использовать моноширинный шрифт и MaxLenght, потому что это поле будет отображаться в отчете.
В обработчике событий KeyPress я попытался создать ярлык, поместить в него строку и сравнить его PreferedSize.Width с шириной столбца. Он почти хорошо работал, но управлять операциями Paste непросто, если мне нужно удалить лишние символы (f.ex .: если я изменяю текстовое значение, курсор переходит на 0).
Я также попытался использовать ActiveEditor.CreateGraphics.MeasureString, но не могу заставить его рисовать (измерять) текст так же, как это делает DevExpress.
Если бы я мог поймать событие Before_WordWrap, это было бы решением.
Спасибо.Limit DevExpress-WinForms TextEdit текст в ширину, а не MaxLenght
Отредактировано: У меня есть 2 отрицательных голоса, потому что кто-то считает, что у меня не было достаточно усилий, чтобы найти ответ самостоятельно, но я считаю, что ответ был нелегким! Я не буду удалять поток, потому что думаю, что он может быть полезен другим. С уважением.
Вы уверены, что не можете использовать свойство maxlength ..? что такое поле в XTraGrid, которое вы хотите ограничить .. также есть EventHandler, где вы можете получить длину текста и установить максимальную длину .. ???? – MethodMan
Поле - это описание статьи счета, которое будет отображаться в отчете Crystal Reports. Я не могу использовать многострочные поля. –
Какова максимальная длина, в которой вы хотите ввести текст, который был введен ... можете ли вы опубликовать код, в котором вы собираетесь использовать эту функцию, и я могу опубликовать то, что я переписываю, чтобы узнать, будет ли оно работать для вас. .? внутри сетки, где она заполняется, должно быть событие onChanged для этого поля в отношении текста .. это то, где вы действительно должны сделать проверку. многострочный не проблема .. это больше длины строки там есть несколько способов справиться с этим, но действительно нужно будет увидеть фрагмент кода, который вы работаете с – MethodMan