2013-09-24 3 views
0

У меня есть приложение Silverlight, у которого есть RadGridView, справа налево. Когда я экспортирую сетку, результат остается справа. я хочу экспортируемого таблица будет находиться в правом левом формате (например, в Excel лист будет в направлении справа налево)Экспорт справа налево от RadGridView

Edit не из ОП передать разъяснения, представленные в комментарии

Этот картина из результата экспорта:

!ExportResult.

и это одно, когда я изменить направление листа вручную:

!ExportResultAfterSheetDirection.

+0

является 'Право налево document' не подходит (Columna справа, по умолчанию)? – pnuts

+0

Нет, это не имеет смысла для экспорта –

+0

Итак, слева в каждом случае столбцы Radgridview говорят 3,2,1 и отображаются как 1,2,3 в Excel, но вы хотели бы, чтобы Excel отображал 3,2,1 значения сохраняя последовательность столбцов ABC (LTR)? Будет ли макрос в Excel заменять последовательность занятых столбцов на то, что вам нужно? – pnuts

ответ

1

Я до сих пор рядом нет идеи о том, что требуется, но вот некоторые возможности:

Начиная с этого:

SO18980638 first example

сортировки ABC столбцы: Row/Сортировка по Строка 1; Сортировка по значениям; Заказ наибольшего к наименьшему, чтобы получить:

SO18980638 second example

затем нажмите правой кнопкой на Левом значок, чтобы получить:

SO18980638 third example

и сортировать снова (тот же самый выбор), чтобы получить это:

SO18980638 fourth example

Остановить, когда будет достигнут желаемый результат.
Удалить строку 1.
Для версии кода нажмите «Макрос записи» и повторите как можно больше вышеуказанных шагов.
Остановить запись.

+0

Могу ли я использовать макросы Excel из своего приложения при экспорте Grid? –

2

Добавляя некоторый стиль в части заголовка вашего выхода в функции экспорта, так и для варианта правой налево выравнивания он вставляется на уровне <WorksheetOptions> декларации, которая называется <x:DisplayRightToLeft/>.

Пример, если вы используете C# в проекте:

private string AddExcelStyling() 
{ 

    StringBuilder sb = new StringBuilder(); 

    sb.Append("<html xmlns:o='urn:schemas-microsoft-com:office:office'\n" + 

    "xmlns:x='urn:schemas-microsoft-com:office:excel'\n" + 

    "xmlns='http://www.w3.org/TR/REC-html40'>\n" + 

    "<head>\n"); 

    sb.Append("<style>\n"); 

    sb.Append("@page"); 

    sb.Append("mso-page-orientation:landscape;}\n"); 

    sb.Append("</style>\n"); 

    sb.Append("<!--[if gte mso 9]><xml>\n"); 

    sb.Append("<x:ExcelWorkbook>\n"); 

    sb.Append("<x:ExcelWorksheets>\n"); 

    sb.Append("<x:ExcelWorksheet>\n"); 

    sb.Append("<x:Name>Sheet Name</x:Name>\n"); 

    sb.Append("<x:WorksheetOptions>\n"); 

    sb.Append("<x:Print>\n"); 

    sb.Append("<x:HorizontalResolution>600</x:HorizontalResolution\n"); 

    sb.Append("<x:VerticalResolution>600</x:VerticalResolution\n"); 

    sb.Append("</x:Print>\n"); 

    sb.Append("<x:Selected/>\n"); 

    sb.Append("<x:DisplayRightToLeft/>\n"); 

    sb.Append("<x:DoNotDisplayGridlines/>\n"); 

    sb.Append("</x:WorksheetOptions>\n"); 

    sb.Append("</x:ExcelWorksheet>\n"); 

    sb.Append("</x:ExcelWorksheets>\n"); 

    sb.Append("</x:ExcelWorkbook>\n"); 

    sb.Append("</xml><![endif]-->\n"); 

    sb.Append("</head>\n"); 

    sb.Append("<body>\n"); 

    return sb.ToString(); 

} 

Смотрите эту ссылку: http://forums.asp.net/p/1445619/3358464.aspx

+0

Спасибо за ваш ответ, но поскольку я использую telerik RadGridView, я использую его функцию экспорта, и я не знаю, как установить этот стиль для него! –

Смежные вопросы