вкладка в файле ресурсов C # - PullRequest
8 голосов
/ 25 мая 2009

Как добавить TAB (\ t) к строковому ресурсу?

"\ tText" не работает

Ответы [ 6 ]

14 голосов
/ 25 мая 2009

Вы должны явно добавить вкладку. Самый простой способ сделать это, вероятно, набрать вашу строку в блокноте (с явно установленной вкладкой, а не с помощью escape-символа), скопировать и вставить текст в редактор ресурсов.

У вас возникнет аналогичная проблема с символами новой строки, самый простой способ добавить их - снова добавить строки с помощью комбинации клавиш Shift-Enter.

7 голосов
/ 25 мая 2009

У меня есть два варианта, которые мне известны:

1) Заменить строку после прочтения строки ресурса: s = s.Replace ("\\ t", "\ t");

2) Введите escape-последовательность непосредственно в строку ресурса во время создания, набрав Alt-012 (я думаю, что это вкладка) на цифровой клавиатуре.

Статьи о том же здесь и здесь .

4 голосов
/ 22 марта 2013

Используйте Alt Code для Tab (Alt + 009) Новые строки добавляются с помощью Shift + Return.

1) Откройте файл ресурсов в VS. 2) Поместите курсор туда, где вы хотите символ табуляции 3) Удерживая клавишу Alt 4) Нажмите 0, 0, 9 на цифровой клавиатуре. 5) Отпустите клавишу Alt.

Когда вы щелкаете по строке ресурса, вы видите, что вкладки удаляются с дисплея, будьте уверены, что они все еще там. Это можно проверить, открыв Resources.Designer.cs и посмотрев на комментарий к строке ресурса и выделив область, в которую была вставлена ​​вкладка.

2 голосов
/ 23 сентября 2014

Прошло почти шесть лет с тех пор, как эта ветка последний раз изменялась, и рекомендация использовать экранирование по-прежнему правит днем. Для сегодняшнего дня я скопировал некоторый текст из строковой константы C # в редактор строк ресурсов, и вкладка была заменена пробелами. Однако, поскольку код ожидал увидеть фактический символ табуляции, он выдал исключение InvalidOperationException (мой код, мое исключение!). Я снова вернулся к этой вкладке, следуя превосходным инструкциям в статье DevX «Другой способ избежать последовательностей в файлах ресурсов .NET», упомянутой во второй цитате в принятом ответе.

Мораль: не рассчитывайте на буфер обмена Windows, чтобы верно копировать ваш текст.

0 голосов
/ 25 мая 2009

\ t добавляет вкладку ascii, но если вы отображаете ее на html-странице, вы не увидите эту вкладку, кроме как в источнике страницы. HTML не отображает вкладки или новые строки как неразрывный пробел. Все они уменьшаются до 1 пробела при отображении. Форматирование HTML с пробелами не рекомендуется, для этого предназначены div с CSS или даже Table. Если вам необходимо добавить дополнительные пробелы в HTML, используйте & nbsp; несколько раз, но это не будет правильной остановкой табуляции и создаст кошмар, если вы когда-нибудь скопируете и вставите.

Также вы можете отображать ваши строковые данные в текстовой области только для чтения. Это сохранит ваш формат строки. Не зная специфики того, что вы пытаетесь сделать со своей строкой или как вы ее создаете, это лучшие предложения, которые я могу вам дать.

Вы также можете создать переменную, но \ t работает inline.

string TAB = char.ConvertFromUtf32(9).ToString();
0 голосов
/ 25 мая 2009

Вы пробовали символ табуляции XML?

Извините, мой символ табуляции не показывался! Должно быть, съел браузер.

	
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...