Like Bala R ответил:
"Использовать TextBox с BorderStyle, установленным в None, и Readonly, установленным в true, и Backcolor для соответствия с контейнером."*
Если текстовая строка очень длинная и Width
из TextBox
недостаточно для отображения всего текста, тогда вы можете установить свойство Width
TextBox
для отображения всехэто текст.
Если вам нужно знать правильное число для Width
, то вы можете использовать для этого MeasureString
метод Graphics
.Вы можете получить экземпляр из CreateGraphics()
метода Control
(TextBox
в данном случае).
Первый параметр - это TextBox's Text, а второй параметр - это TextBox's Font.Эта функция возвращает SizeF
struct.Вам нужно только свойство Width, конвертируйте его в целое число с (int)size.Width
или (int)Math.Round(size.Width)
.
Не забудьте после этого вызвать метод Dispose()
графического экземпляра, потому что он вам больше не нужен.
Вы можете написать свою собственную функцию, которая будет выполнятьвесь этот процесс:
static void SetText(TextBox textBox, string str)
{
Graphics graphics = textBox.CreateGraphics();
SizeF size = graphics.MeasureString(str, textBox.Font);
graphics.Dispose();
textBox.Width = (int)Math.Round(size.Width);
textBox.Text = str;
}