Страница 1 из 1

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

Добавлено: 15 янв 2014, 10:45
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 на два типа?

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

Добавлено: 15 янв 2014, 13:55
goodwen
По обоим вопросам получилось найти ответ:

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

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

Как я могу сделать чтобы в тех случаях когда разделитель колонок убирается текст из первой колонки растягивался и на второй столбец?

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

Добавлено: 17 янв 2014, 10:25
HighAley
Здравствуйте.

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

Спасибо.

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

Добавлено: 17 янв 2014, 14:37
goodwen
Сделал как вы посоветовали, но при выключении одного текстового компонента второй автоматически не расширился на всю ширину DataBand`а. Результат виден в прикреплённом файле "Пример результата.png". Я совершенно не понимаю какое свойство в какое значение я должен задать у второго текстового компонента чтобы он автоматически занял всю ширину страницы. Автоширина не работает, она только уменьшает размер компонента, пробовал использовать Panel и в неё положить оба текстовых компонента, эффект не изменился. Как мне решить данную проблему?

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

Добавлено: 20 янв 2014, 13:19
HighAley
Здравствуйте.

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

Спасибо.