DevExpress社エクストラレポート:詳細バンドは、任意のデータを持っていない場合に、グループフッターにラベルを表示する方法は?

StackOverflow https://stackoverflow.com/questions/1828308

  •  11-09-2019
  •  | 
  •  

質問

と呼ばれるラベルがある場合:LBL警告。詳細バンドのレコードを持っていないとき、私は(目に見える=真)、それを表示したいと思います。ラベルは、グループフッターである。

役に立ちましたか?

解決

このイベントは、(私の例では、それはXtraReport1という名前です)レポート自体に取り付けられています。 GetCurrentRow()プライマリレポートバインディングソースからの現在のデータを返すXtraReportBaseのメソッドです。データが存在しない場合は、nullを返します。

private void XtraReport1_BeforePrint(object sender, PrintEventArgs e)
{
    bool noDataFound = GetCurrentRow() == null;

    lblWarning.Visible = noDataFound;
}

VBで同じハンドラます:

Private Sub XtraReport1_BeforePrint(ByVal sender As System.Object, ByVal e As PrintEventArgs) Handles MyBase.BeforePrint
    Dim noDataFound As Boolean = GetCurrentRow() Is Nothing

    lblWarning.Visible = noDataFound
End Sub

他のヒント

現時点での私のdevのマシンの前にしかし、このような何かが働くかもしれない

Dim HadRecords As Boolean = False

Private Sub GroupFooter1_BeforePrint(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintEventArgs) Handles GroupFooter1.BeforePrint
    If HadRecords = False Then
        lblWarning.visible = True
    Else
        lblWarning.visible = False
        HadRecords = False ' reset the flag '
    End If
End Sub

Private Sub Detail_BeforePrint(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintEventArgs) Handles Detail.BeforePrint
    HadRecords = True ' set the flag '
End Sub
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top