作成日: 2022/04/20 最終更新日: 2022/04/20
文書種別
使用方法
詳細
セクションレポートにおいて、TextBoxコントロールやセクションのCanGrow(CanShrink)プロパティをTrueに設定した場合、それらの高さは、データや配置されているコントロールの内容に合わせて自動的に調整されます。
また、CanGrowプロパティによってコントロールの高さが伸長する場合、伸長前のコントロールの下端以下に配置されている他のコントロールの縦位置(Topプロパティ)は、伸長された高さに合わせて自動的に調整されます。
※CanGrow/CanShrinkプロパティによる高さの自動調整は、そのセクションのFormatイベント終了後、BeforePrintイベント発生前に行われます。
※Formatイベント終了時点で、VisibleプロパティがFalseに設定されているコントロールについては、高さの自動調整は行われません。
ただし、CanGrowプロパティによって高さが調整されるコントロールの下端より上に上端が、位置が調整されるコントロールの上端より下に下端があるコントロールが他に存在した場合、そちらとの位置関係が優先されるため、縦位置の調整は行われません。セクションの上端から下端まで縦線を出力するためにLineコントロールを配置している場合なども、こちらの条件に該当します。
たとえば以下のような配置で、TextBox1がCanGrowにより伸長した場合、TextBox3が存在するために、TextBox2の縦位置は調整されず、TextBox1はTextBox2に重なる形で出力されます。
上記のような配置で、TextBox2の縦位置を調整するには、該当するコントロール(上記の場合TextBox3)を、一時的に非表示にします。
具体的には、コントロールが配置されたセクションのFormatイベント内で、コントロールのVisibleプロパティをFalseに変更し、BeforePrintイベント内でTrueに戻します。
◆サンプルコード (C#)
private void Detail_Format(object sender, System.EventArgs eArgs) { this.TextBox3.Visible = false; } private void Detail_BeforePrint(object sender, System.EventArgs eArgs) { this.TextBox3.Visible = true; }
◆サンプルコード (VB.NET)
Private Sub Detail_Format(...) Handles Detail.Format Me.TextBox3.Visible = False End Sub Private Sub Detail_BeforePrint(...) Handles Detail.BeforePrint Me.TextBox3.Visible = True End Sub
なお、CanGrowプロパティによる高さの自動調整が有効となるのは、Formatイベント終了時に、VisibleプロパティがTrueに設定されているコントロールです。上記の場合、TextBox3の高さは調整されませんので、あらかじめご注意ください。