Как отображать поля в новой строке в том же текстовом поле?

Я использую Silverlight4 и Telerik Reporting Q3 2011. Я пытаюсь создать отчеты обо всех торговых точках. Я использовал Table для отображения его полей. И я хочу отображать полный адрес в той же ячейке. Как я мог?

Я использовал следующее выражение для отображения полного адреса в той же ячейке.

 = Fields.AddressLine1
     + ", " + Fields.AddressLine2
     + ", " + Fields.Suburb
     + ", " + Fields.City
     + ", " + Fields.State
     + ", " + Fields.Country

Я хочу отобразить это в той же ячейке, но хочу вывести, как показано ниже.

 =====================
       Address
 =====================
  15A,
  xxxx xxxRoad,
  xxxxxx,
  xxxxxxxx
 ====================

Но я получаю это

 =====================
       Address
 =====================
  15A, xxxx xxxRoad, xxxxxx, xxxxxxxx
 =====================

Как мне получить результат, который я хочу?


person R76    schedule 29.03.2012    source источник


Ответы (4)


Используйте Environment.NewLine для перехода на новую строку, см. ниже

=Fields.AddressLine1 + ", " 
+ Environment.NewLine + Fields.AddressLine2 + ", " 
+ Environment.NewLine + Fields.Suburb + ", " 
+ Environment.NewLine + Fields.City + ", " 
+ Environment.NewLine + Fields.State + ", " 
+ Environment.NewLine + Fields.Country;

РЕДАКТИРОВАТЬ

Перейдите по ссылке как вставить новую строку в текстовый блок в Silverlight

person Sai Kalyan Kumar Akshinthala    schedule 29.03.2012
comment
Это показывает мне, что выражение ошибки содержит объект «Среда», который не определен в текущем контексте. - person R76; 29.03.2012
comment
Используйте пространство имен, используя System вверху. - person Sai Kalyan Kumar Akshinthala; 29.03.2012
comment
где вы поместили пространство имен, поместите использование системы в объявление пространства имен. - person Sai Kalyan Kumar Akshinthala; 29.03.2012

Пробовали ли вы использовать \n или \r\n в своих строках везде, где хотите сделать разрыв строки?

person Dummy01    schedule 29.03.2012
comment
Я пробовал это, но не работает. Я также пробовал Environment.NewLine, но он тоже не работает. - person R76; 29.03.2012
comment
при использовании \n или \r он показывает мне ошибку, что '\r \n\' не определено в текущем контексте - person R76; 29.03.2012
comment
вы ставите \r\n между запятой, между двойными кавычками? Environment.Newline должен помочь (вне кавычек), странно, что это не так. поэтому Fields.AddressLine1 + , \r\n + Fields.AddressLine2 или Fields.AddressLine1 + , + Environment.Newline + Fields.AddressLine2 - person BlueCacti; 29.03.2012
comment
Может быть, вы должны проверить свойство MultiLine? Например, в Visual Studio вам нужно сделать это для текстовых полей. - person BlueCacti; 29.03.2012
comment
Если я использую \r\n между кавычками, он будет отображать \r\n как текст. - person R76; 29.03.2012

Да понял.....

Я создал функцию NewLineFeeds() в этой функции. Я использовал метод Replace() для замены конкретной строки на newLine(\n) .

 public static string NewLineFeeds(string text)
    {
        string result = text.Replace(", ", "\n");
        result = result.Replace(", ", "\n");
        result = result.Replace(", ", "\n");
        return result;
    }

и мое выражение

 =NewLineFeeds(Fields.AddressLine1 
 + ", " + Fields.AddressLine2 
 + ", " + Fields.Suburb 
 + ", " + Fields.City 
 + ", " + Fields.State 
 + ", " + Fields.Country)

Это вызывает функцию NewLineFeeds() и заменяет "," на \n (новая строка). Добавьте это будет работать нормально ..

person R76    schedule 29.03.2012

Используйте полное имя System.Environment.NewLine, и оно будет работать. Я только что подтвердил это в своем отчете.

person Anugrah A    schedule 05.05.2014