Reportviewer (RDLC), скрыть строку на первой странице

Есть ли способ вызвать видимость строки в зависимости от номера страницы?

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

Я попытался с некоторым выполнением кода в разделе нижнего колонтитула / заголовка и сохранить PageNumber, потому что глобальный!PageNumber не доступен из тела. Но никакого эффекта, кажется, что нижний колонтитул и раздел заголовка создаются позже, поэтому моя переменная в коде отчета всегда равна 0 при чтении ее в скрытом выражении строки таблицы.

Как это можно сделать? Любые разные идеи, как скрыть строку таблицы на первой странице?

1 ответ

Как и в случае переустановки номера страницы в этом сообщении, вы можете добавить собственный код, чтобы проверить, на какой странице вы находитесь, а затем позвонить. setPageNumber функция из заголовка только для первой страницы и checkIfFirstPage Функция в выражении видимости для вашей строки:

Shared pageNumber as Integer

Public Function setPageNumber()
  pageNumber = 1
  Return newPage
End Function

Public Function checkIfFirstPage() as Boolean
  Dim isFirstPage as Boolean
  If (pageNumber = 1)
      isFirstPage = true
      pageNumber = pageNumber + 1
  Else
      isFirstPage = false
  Endif
  Return isFirstPage 
End Function

Чтобы добавить пользовательский код, откройте окно свойств отчета, вкладка "Код":

Звонить setPageNumber только из заголовка отчета на первой странице - вы можете добавить небольшое текстовое поле в заголовок и настроить его на отображение белого на белом (чтобы оно не показывало значение). Установите выражение для текстового поля на:

= IIF(Globals!PageName = 1, Code.setPageNumber(), 0)

Другой подход к вашей проблеме - использовать переменные и текстовое поле в заголовке, аналогичном этому посту.

Другие вопросы по тегам