Это должно быть очень просто.
У меня есть элемент управления Label в моей форме, и я пытаюсь поместить символ табуляции между текстом
Label.Text = "Is there a\ttab";
Вывод: "Есть ли atab",
Что я делаю неправильно?
Это должно быть очень просто.
У меня есть элемент управления Label в моей форме, и я пытаюсь поместить символ табуляции между текстом
Label.Text = "Is there a\ttab";
Вывод: "Есть ли atab",
Что я делаю неправильно?
Вкладка фактически является непечатаемым символом, а скорее контрольным символом. То, что он делает, полностью зависит от приложения. Что именно вы ожидаете? 8 пробелов? 4 пробела? Как много пробелов по мере необходимости, чтобы получить до восьми столбцов? Отступы следующего текста на один см?
Короче говоря: элемент управления Label
не поддерживает вкладки. На самом деле, Label использует обычные графические подпрограммы для рендеринга своего текста и как они должны знать, что вы намерены делать с вашим символом табуляции?
Если вам нужно отобразить этот символ как количество пробелов, вы должны заменить его на это количество пробелов.
Ничего, ярлыки форм Windows очень ограничены по функциональности и не поддерживают символ \t.
A (слегка неудобная) альтернатива может быть:
label1.Text = "test\ting\t123".Replace("\t"," ");
Старый поток, но поскольку ни один из ответов не работал у меня, я пойду вперед и брошу свои 2 цента. Я не мог получить "\ t" или даже использовать пробелы вручную, чтобы добавить интервал к ярлыку. То, что я закончил, - это использовать альт-код alt-255 5 раз. Это работало как прелесть. Должен любить тотальные хаки...
Я хотел добавить вкладки ("\t"
) в раскрывающийся список элементов. Элементы имеют метод ToString
, который объединяет около 3 слов. Они не выстроились в линию. Например:
Такой длинный список трудно прочитать. Поэтому я использовал string.Format
следующим образом:
string.Format("{0,6}-{1,-4} {2}",id,name,num);
Число после запятой будет правым выравниванием/пэдом, если положительное и левое выравнивание/пэд, если отрицательное. Затем я изменил свой шрифт в Combobox на моноширинный, как Courier New, и вы получите что-то вроде этого:
1-I 45
123-AB 511
123456-MMM 611
Это намного проще для пользователя.
Вправо, чтобы вставить вкладку, просто добавьте нужные места.
Если вы хотите компенсировать следующую указанную длину, вы можете попробовать
int offset_text = 20;
label1.Text = "Is there a".PadRight(offset_text)+"Tab";
label2.Text = "More Text".PadRight(offset_text)+"Too";
Просто используйте литеральную строку, и вам должно быть хорошо идти...
label1.Text = @"Test for Tab";
Где это большое пространство, где я на самом деле нажимаю вкладку три раза... надеюсь, что это поможет
Просто щелкните по стрелке справа от свойства Text метки (щелкните в содержимом свойства Text, и появится стрелка раскрывающегося списка). Откроется окно для редактирования текста, и в этом поле вы можете использовать Enter, Tab и т.д.