Gap エレメントは、まさにその名前が示すとおり、ギャップをコンテンツに追加します。異なるレイアウト エレメントがあるがページでエレメントを特定のスペースだけ垂直に離したい場合に、使用しなければならないのが Gap エレメントです。
Gap エレメントは、ひとつのプロパティ、 Height プロパティしか公開しません。Height プロパティによって、Gap の高さを固定のポイント数で指定するか、使用可能なスペースの残りのパーセントで指定することができます。
Gap エレメントの高さを固定の高さに設定する時には、Height プロパティを FixedHeight クラスの新しいインスタンスに設定する必要があります。ギャップを開けたいポイント数を FixedHeight クラスのコンストラクタに渡します。
Gap エレメントの相対的な高さを使用するためには、Height プロパティを RelativeHeight クラスのインスタンスに設定する必要があります。これによって、ギャップの高さを使用可能なスペースの残りのパーセントで指定できます。したがって、ページの終わりの方に追加される Gap エレメントと同じ値を使用してページの先頭に Gap エレメントを追加すると、終わりよりもギャップが大きくなります。これは、最初の Gap エレメントはその後に残されるページの量が多いためにパーセントで指定すると数字が大きくなってしまうからです。右の画像を参照すると、この概念をよく理解できます。最初の Gap エレメントは、追加された時点のページの 25% を使用しています。2 番目の Gap エレメントは追加された時点のページの 50% を使用していますが、最初の Gap エレメントとほぼ同じサイズになっています。
以下のコードを使用して、上記の画像のように 2 つの Gap エレメントによって分割された 3 つの Text エレメントを追加します。このトピックは、section1 と呼ばれる少なくともひとつの Section エレメントだけでなく、 Report エレメントが定義済みであることを前提としています。
Visual Basic の場合:
Imports Infragistics.Documents.Reports.Reports.Report . . . Dim gapText As Infragistics.Documents.Reports.Reports.Report.Text.IText = section1.AddText() gapText.Background = New Background(Brushes.LightSteelBlue) gapText.AddContent("Paragraph one text...") Dim gap As Infragistics.Documents.Reports.Reports.Report.IGap = section1.AddGap() gap.Height = New RelativeHeight(25) gapText = section1.AddText() gapText.Background = New Background(Brushes.LightSteelBlue) gapText.AddContent("Paragraph two text...") gap = section1.AddGap() gap.Height = New RelativeHeight(50) gapText = section1.AddText() gapText.Background = New Background(Brushes.LightSteelBlue) gapText.AddContent("Paragraph three text...")
C# の場合:
using Infragistics.Documents.Reports.Reports.Report; . . . Infragistics.Documents.Reports.Reports.Report.Text.IText gapText = section1.AddText(); gapText.Background = new Background(Brushes.LightSteelBlue); gapText.AddContent("Paragraph one text..."); Infragistics.Documents.Reports.Reports.Report.IGap gap = section1.AddGap(); gap.Height = new RelativeHeight(25); gapText = section1.AddText(); gapText.Background = new Background(Brushes.LightSteelBlue); gapText.AddContent("Paragraph two text..."); gap = section1.AddGap(); gap.Height = new RelativeHeight(50); gapText = section1.AddText(); gapText.Background = new Background(Brushes.LightSteelBlue); gapText.AddContent("Paragraph three text...");