Автоматическая ширина колонок таблицы
-
- Сообщения: 4
- Зарегистрирован: 25 сен 2013, 13:21
- Откуда: Russia, Ryazan
Автоматическая ширина колонок таблицы
Доброго времени суток
Ищу способ по согласованию ширины колонок заголовка таблицы с шириной колонок таблицы с данными. В данный момент используется Table и ColumnHeaderBand с текстовыми полями постоянной ширины. Данные в таблице простые: числа и строки (например ФИО), размеры листа (page) значения не имеет, т.к. в конечном итоге создается файл, не предназначенный для печати.
Подскажите пожалуйста способ (возможно программный - в коде дизайнера) согласовать таблицу и заголовок (не важно какие компоненты будут использоваться - лишь бы они могли отобразить таблицу)
Ищу способ по согласованию ширины колонок заголовка таблицы с шириной колонок таблицы с данными. В данный момент используется Table и ColumnHeaderBand с текстовыми полями постоянной ширины. Данные в таблице простые: числа и строки (например ФИО), размеры листа (page) значения не имеет, т.к. в конечном итоге создается файл, не предназначенный для печати.
Подскажите пожалуйста способ (возможно программный - в коде дизайнера) согласовать таблицу и заголовок (не важно какие компоненты будут использоваться - лишь бы они могли отобразить таблицу)
Re: Автоматическая ширина колонок таблицы
Здравствуйте.
Опишите, пожалуйста, более подробно проблему, с которой вы столкнулись. Желательно со скриншотами, а также укажите версию используемого продукта.
Спасибо.
Опишите, пожалуйста, более подробно проблему, с которой вы столкнулись. Желательно со скриншотами, а также укажите версию используемого продукта.
Спасибо.
-
- Сообщения: 4
- Зарегистрирован: 25 сен 2013, 13:21
- Откуда: Russia, Ryazan
Re: Автоматическая ширина колонок таблицы
Здравствуйте, версия Reports .Net 2012.2.1400Aleksey Andreyanov писал(а):Здравствуйте.
Опишите, пожалуйста, более подробно проблему, с которой вы столкнулись. Желательно со скриншотами, а также укажите версию используемого продукта.
Спасибо.
Подскажите пожалуйста как можно отправить вам файл.
-
- Сообщения: 4
- Зарегистрирован: 25 сен 2013, 13:21
- Откуда: Russia, Ryazan
Re: Автоматическая ширина колонок таблицы
Добрый вечер
Отправил архив с тестовым отчетом.
В файле Result.xslx - результат, в NeedSomthingLikeThis.xlsx - примерно необходимый результат.
Проблема заключается в том, что лист MS Excel не имеет фиксированного размера и длинна строк входных данных тоже различна. Необходимо выставить/расчитать/... ширину колонок для содержимого таблицы вручную (если возможно) или автоматически (если возможно), чтобы результат был похож на NeedSomthingLikeThis.xlsx
Используемые компоненты не имеют значения: лишь бы можно было вывести таблицу.
Еще одна проблема: непонятное объединения ячеек в компоненте "Таблица". Почему-то текст, написанный в начале ячейки, выводится так, будто ячейка все еще разделена, и текст написан в последней из них.
Отправил архив с тестовым отчетом.
В файле Result.xslx - результат, в NeedSomthingLikeThis.xlsx - примерно необходимый результат.
Проблема заключается в том, что лист MS Excel не имеет фиксированного размера и длинна строк входных данных тоже различна. Необходимо выставить/расчитать/... ширину колонок для содержимого таблицы вручную (если возможно) или автоматически (если возможно), чтобы результат был похож на NeedSomthingLikeThis.xlsx
Используемые компоненты не имеют значения: лишь бы можно было вывести таблицу.
Еще одна проблема: непонятное объединения ячеек в компоненте "Таблица". Почему-то текст, написанный в начале ячейки, выводится так, будто ячейка все еще разделена, и текст написан в последней из них.
Re: Автоматическая ширина колонок таблицы
Здравствуйте!
В случае с таблицей вы можете обойтись вообще без ColumnHeaderBand, поскольку первые строки в таблице можно делать заголовочными, при этом определить для них свой стиль. В дизайнере количество заголовочных строк устанавливается свойством Header Rows Count в разделе Table, а в коде через одноименное свойство StiTable. При таком подходе Ваша проблема отпадает сама собой.
В случае с таблицей вы можете обойтись вообще без ColumnHeaderBand, поскольку первые строки в таблице можно делать заголовочными, при этом определить для них свой стиль. В дизайнере количество заголовочных строк устанавливается свойством Header Rows Count в разделе Table, а в коде через одноименное свойство StiTable. При таком подходе Ваша проблема отпадает сама собой.
Re: Автоматическая ширина колонок таблицы
Здравствйте, Андрей.
В MS Excel есть большая проблема с сопоставлением размера текста и ячеек.
В приложениях MS-Office функция WYSIWYG часто работает некорректно.
Например, ваш отчет в EXCEL в режиме редактирования и в предпросмотре печати выглядит по-разному, еще больше различий вы увидите, если в режиме редактирования начнете менять масштаб страницы от 50% до 200% - самый длинный текст на странице будет обрезаться на разное количество строчек в зависимости от масштаба. Вы поджете увидеть этот эффект при изменении масштаба в приложенном файле.
Также отрисовка текста в Excel осуществляется собственными методами, и не совпадает ни с GDI+ (Standard, Typographic), ни с GDI (WYSIWYG).
Особенно это заметно на междустрочном расстоянии - оно больше, чем в GDI/GDI+ процентов на 20..25, поэтому последняя строка текста может не помещаться в ячейку.
К сожалению, в Excel до сих пор нельзя изменять междустрочное расстояние, поэтому данная проблема не решается автоматически, и поэтому нельзя точно передать вид текста в превью.
Варианты примерного решения проблемы:
1. Попробовать выбрать для текста разные шрифты; для каждого шрифта попробовать разный TextQuality - выбрать тот, при котором строка текста получается самой длинной.
2. В конце каждого текста добавлять пустую строку для компенсации погрешности изображения.
3. Установить для текста Margins, чтобы получался запас пустого места для текста (в Excel нет полей ячейки, поэтому это место будет как резерв для текста). По поводу объединения ячеек почитайте, пожалуйста нашу документацию. http://www.stimulsoft.com/ru/documentat ... export.htm
Спасибо.
В MS Excel есть большая проблема с сопоставлением размера текста и ячеек.
В приложениях MS-Office функция WYSIWYG часто работает некорректно.
Например, ваш отчет в EXCEL в режиме редактирования и в предпросмотре печати выглядит по-разному, еще больше различий вы увидите, если в режиме редактирования начнете менять масштаб страницы от 50% до 200% - самый длинный текст на странице будет обрезаться на разное количество строчек в зависимости от масштаба. Вы поджете увидеть этот эффект при изменении масштаба в приложенном файле.
Также отрисовка текста в Excel осуществляется собственными методами, и не совпадает ни с GDI+ (Standard, Typographic), ни с GDI (WYSIWYG).
Особенно это заметно на междустрочном расстоянии - оно больше, чем в GDI/GDI+ процентов на 20..25, поэтому последняя строка текста может не помещаться в ячейку.
К сожалению, в Excel до сих пор нельзя изменять междустрочное расстояние, поэтому данная проблема не решается автоматически, и поэтому нельзя точно передать вид текста в превью.
Варианты примерного решения проблемы:
1. Попробовать выбрать для текста разные шрифты; для каждого шрифта попробовать разный TextQuality - выбрать тот, при котором строка текста получается самой длинной.
2. В конце каждого текста добавлять пустую строку для компенсации погрешности изображения.
3. Установить для текста Margins, чтобы получался запас пустого места для текста (в Excel нет полей ячейки, поэтому это место будет как резерв для текста). По поводу объединения ячеек почитайте, пожалуйста нашу документацию. http://www.stimulsoft.com/ru/documentat ... export.htm
Спасибо.
-
- Сообщения: 4
- Зарегистрирован: 25 сен 2013, 13:21
- Откуда: Russia, Ryazan
Re: Автоматическая ширина колонок таблицы
Здравствуйте, Алексей
Благодарю за помощь.
Благодарю за помощь.
Спасибо за ваш ответ, в своем последнем "эксперименте" так и сделал.Summit писал(а):Здравствуйте!
В случае с таблицей вы можете обойтись вообще без ColumnHeaderBand, поскольку первые строки в таблице можно делать заголовочными, при этом определить для них свой стиль. В дизайнере количество заголовочных строк устанавливается свойством Header Rows Count в разделе Table, а в коде через одноименное свойство StiTable. При таком подходе Ваша проблема отпадает сама собой.
Re: Автоматическая ширина колонок таблицы
Здравствуйте.
Всегда рады вам помочь.
Обращайтесь, если возникнут ещё вопросы.
Спасибо.
Всегда рады вам помочь.
Обращайтесь, если возникнут ещё вопросы.
Спасибо.