Datagridview персидское форматирование - PullRequest
0 голосов
/ 14 февраля 2012

Я пытаюсь напечатать строку в ячейке моего представления данных, которая включает персидские и английские символы или даже любой язык.Когда я печатаю это значение в указанной ячейке, оно как-то плохо форматируется.

Вот изображение:

screenshot

Ответы [ 2 ]

0 голосов
/ 14 февраля 2012

Все строки, хранящиеся в строке, на самом деле являются Unicode.Unicode.Читайте: Строки в .Net и C # и Абсолютный минимум Каждый разработчик программного обеспечения Абсолютно, положительно должен знать о Юникоде и наборах символов (никаких оправданий!)

Редактировать:Я предполагаю, что вы хотите, чтобы функция Convert автоматически изменяла \ x11 на \ u25c0, но проблема здесь в том, что \ x11 действителен практически в любой кодировке, различия обычно начинаются с символа \ x80, поэтому функция Convert будет поддерживать его, даже еслиВы делаете это:

string reEncodedString = null;
byte[] unicodeBytes = UnicodeEncoding.Unicode.GetBytes(value);
byte[] sourceBytes = Encoding.Convert(Encoding.Unicode,
                                sourceEncoding, unicodeBytes);

Вы можете увидеть в unicode.org сопоставления от CP850 к Unicode.Итак, для того, чтобы это преобразование произошло, вам придется изменить эти символы вручную.

, вы также должны убедиться, что, если вы собираетесь использовать символы фарси, сделайте эту строку кода

System.Globalization.CultureInfo language = new System.Globalization.CultureInfo("fa-ir"); 
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(language); 

и для возврата символов на английский используйте этот бит кода

System.Globalization.CultureInfo language = new System.Globalization.CultureInfo("en-us"); 
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(language);
0 голосов
/ 14 февраля 2012

Я предполагаю, что персидский читается справа налево?У нас много одинаковых проблем в наших переводах на иврит!

Вы можете посмотреть, как задать для свойства RightToLeft значение Yes на любых элементах управления, которые будут использовать оба языка.

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