ActiveReports で一行おきに背景色を変えるには
備忘録です。先日に続き ActiveReports ネタ。
グレープシティ ActiveReports for .NET 7.0J Pro 3開発LP
- 出版社/メーカー: グレープシティ
- 発売日: 2013/01/07
- メディア: CD-ROM
- この商品を含むブログ (1件) を見る
一行おきに背景色変えるのってどっかにソースあったと思うんだけど見つからなかったので、プロジェクトからコード引っ張ってきました。SectionReport (3.0J なら ActiveReport3)クラスに Detail.Format イベントを追加し、イベント内で処理すればオッケーです。こんな感じ・・・
Private _rowCount As Int32 Private Sub Detail_Format(sender As Object, e As EventArgs) Handles Detail.Format Try If (_rowCount Mod 2) = 0 Then ' 偶数行 Detail.BackColor = System.Drawing.Color.Transparent Else ' 奇数行 Detail.BackColor = System.Drawing.Color.AliceBlue End If _rowCount += 1 Catch ex As Exception Throw End Try End Sub
private Int32 _rowCount; private void detail_Format(object sender, EventArgs e) { try { if ((_rowCount % 2) == 0) { // 偶数行 detail.BackColor = System.Drawing.Color.Transparent; } else { // 奇数行 detail.BackColor = System.Drawing.Color.AliceBlue; } } catch (Exception) { throw; } }
競合某社のレポートは偶数行・奇数行の前景・背景をノンコーディングで設定できるので、ActiveReports もプロパティで設定できるようになると便利ですね。