Muied Ahmad Ответов: 1

Как разместить все столбцы на одной странице при печати в excel с помощью C#


- Привет! Я экспортирую excel из gridview и после загрузки excel нажимаю ctrl+p, после чего все столбцы не помещаются на вкладке печать. Я хочу уместить их на одной странице. Вот мой код-

Свойство HttpContext.Тока.Ответ.Четкий();
Свойство HttpContext.Тока.Ответ.Буфер = true;
Свойство HttpContext.Тока.Ответ.AddHeader("content-disposition", string.Формат("вложение; имя файла={0}", fileName));

Свойство HttpContext.Тока.Ответ.Кэш.SetCacheability(HttpCacheability.NoCache);
Свойство HttpContext.Тока.Ответ.Значение contentType = "применение/донгов.в MS-Excel с";
Свойство HttpContext.Тока.Ответ.Кодировка = "";
Свойство HttpContext.Тока.Ответ.Писать ("в<мета НТТР-экв=тип контента Контент=\"текст/HTML; кодировка=Windows на 1250\"и GT;\п");
Свойство HttpContext.Тока.Ответ.Писать ("в<html-код атрибута xmlns:о='урна:схим-Майкрософт-com:офис:офис'\п" + "атрибутов xmlns:х='урна:схим-Майкрософт-com:офис:Excel с'\п" +
"xmlns='http://www.w3.org/TR/REC-html40'>\n" +
"<head>\n");


Любая помощь будет оценена, спасибо!

Что я уже пробовал:

Я искал в google, но моя проблема не решилась.

1 Ответов

Рейтинг:
0

Dave Kreskowiak

Хорошо, код, который вы опубликовали, не имеет никакого отношения к тому, как клиент печатает лист Excel. Этот код просто настраивает заголовки содержимого, а не само содержимое, вашу книгу Excel.

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

Примерно все, что вы можете сделать, это то же самое, что вы можете сделать в настройках печати Excel, "Fit to sheets". В Excel 2016, вы получаете варианты "лист помещается на одной странице", или "вписать все столбцы на одну страницу", "подходят для всех строк на одной странице", и так далее.

В пакете SDK OpenXML, используемом для создания книги Excel, используется Класс Параметры [^] чтобы все это устроить.

Вы используете OpenXML SDK или что-то подобное, не так ли?