Программное объединение ячеек таблицы при выполнение условия

Обсуждение Stimulsoft Reports.NET
Ответить
goodwen
Сообщения: 11
Зарегистрирован: 16 дек 2013, 08:32

Программное объединение ячеек таблицы при выполнение условия

Сообщение goodwen »

Здравствуйте, у меня возникла задача сформировать отчёт, пример которого можно увидеть во вложенном файле "Пример таблицы.png". В качестве источника следующие бизнес объекты:

Код: Выделить всё

    public class VerificationProgramDto
    {
        public ICollection<VerificationProgramItemDto> Items { get; set; }
    }

    public class VerificationProgramItemDto
    {
        public string Text { get; set; }
    }
То есть коллекция Items должна быть отображена на таблицу, которая приведена в примере.
Мне нужно чтобы для некоторых элементов в коллекции Items класса VerificationProgramDto ячейки в строке были объединены. Отсюда у меня два вопроса:
1. Как я могу программно указать объединение ячеек в строке если выполняется определённое условие.
2. На основе чего я могу описать данное условие? Я обязательно должен добавить в класс VerificationProgramItemDto булевсккое свойство, или мне нужно обязательно разделить VerificationProgramItemDto на два типа?
Вложения
Пример таблицы.png
Пример таблицы.png (88.46 КБ) 3380 просмотров
goodwen
Сообщения: 11
Зарегистрирован: 16 дек 2013, 08:32

Re: Программное объединение ячеек таблицы при выполнение усл

Сообщение goodwen »

По обоим вопросам получилось найти ответ:

1. В свойствах контролов есть раздел "4. Оформление", там есть свойство "Условия".
2. При создании условия можно указать выражение, или булевское значение.

Столкнулся с ещё одной проблемой на которую я не смог найти решение. В прикреплённом файле "VerificationProgram.mrt" показано как я сделал таблицу. Но в тех строках где убирается разделительная линия текст остаётся только в первом столбце, как показано в прикреплённом файле "Пример результата.png".

Как я могу сделать чтобы в тех случаях когда разделитель колонок убирается текст из первой колонки растягивался и на второй столбец?
Вложения
Пример результата.png
Пример результата.png (135.49 КБ) 3376 просмотров
VerificationProgram.mrt
(10.47 КБ) 399 скачиваний
HighAley
Сообщения: 1998
Зарегистрирован: 08 июн 2011, 11:36
Откуда: Stimulsoft Office

Re: Программное объединение ячеек таблицы при выполнение усл

Сообщение HighAley »

Здравствуйте.

Как вариант, вы можете использовать два текстовых компонента и включать один из них используя Conditions.

Спасибо.
goodwen
Сообщения: 11
Зарегистрирован: 16 дек 2013, 08:32

Re: Программное объединение ячеек таблицы при выполнение усл

Сообщение goodwen »

Сделал как вы посоветовали, но при выключении одного текстового компонента второй автоматически не расширился на всю ширину DataBand`а. Результат виден в прикреплённом файле "Пример результата.png". Я совершенно не понимаю какое свойство в какое значение я должен задать у второго текстового компонента чтобы он автоматически занял всю ширину страницы. Автоширина не работает, она только уменьшает размер компонента, пробовал использовать Panel и в неё положить оба текстовых компонента, эффект не изменился. Как мне решить данную проблему?
Вложения
Пример результата.png
Пример результата.png (86.74 КБ) 3357 просмотров
HighAley
Сообщения: 1998
Зарегистрирован: 08 июн 2011, 11:36
Откуда: Stimulsoft Office

Re: Программное объединение ячеек таблицы при выполнение усл

Сообщение HighAley »

Здравствуйте.

Задайте ему размер, равный ширине страницы изначально.

Спасибо.
Ответить