XtraReport數據綁定模式比較

報表設計器可以使用表達式或標準數據綁定爲報表提供動態內容。

表達式綁定

表達式綁定(默認模式)使您可以指定包含兩個或多個數據字段和各種功能的複雜表達式。您還可以使用表達式來計算任何複雜度的摘要,而無需編寫腳本,並有條件地調整數據的格式而無需設置格式規則。

將“屬性網格”切換到“ 表達式”選項卡,然後調用“ 表達式編輯器”來構造表達式。

expressions-mode.png

表達式編輯器允許您使用寬範圍的功能,獲得報告的頻帶和控制,並引用當前數據源值。

表達式分頁符

請注意,與標準綁定相比,此方法可以減慢複雜的計算。

傳統數據綁定

數據綁定是早期報表版本使用的傳統方法。

此模式使您可以將單個數據字段分配給報表控件的綁定屬性。要提供自定義綁定邏輯,請處理具有安全隱患的報表腳本事件

報告之前打印腳本事件屬性網格可視化工作室

 

綁定模式比較

綁定到單個數據字段

  • 通過“ 字段列表”面板,您可以將字段拖放到設計圖面或現有報表控件上。在表達式數據綁定模式中,所有綁定方式都相同。

  • 控件的智能標記使您可以在相應的下拉列表中選擇目標數據字段。

    表達式綁定

    數據綁定

  • 您可以選擇一個報表控件,並將其綁定到“屬性網格”中的數據。

    表達式綁定

    數據綁定

    切換到“ 表達式”選項卡,然後爲“ 文本”屬性指定一個數據字段。

    展開(數據綁定)類別,然後將數據字段分配給Text屬性。

有關更多信息,請參見將報表控件綁定到數據主題。

綁定到多個數據字段

表達式綁定

數據綁定

使用郵件合併功能。

單擊表達式屬性的省略號按鈕,然後指定表達式。

使用郵件合併功能。

計算總結

表達式綁定

數據綁定

在“ 表達式編輯器 ”的“ 摘要”部分中選擇摘要功能。

所有功能均帶有“ sum”前綴。

有關更多信息,請參見計算摘要

在“ 摘要功能”下拉列表中選擇摘要功能。

有關更多信息,請參見計算摘要

複雜綁定,自定義摘要

表達式綁定

數據綁定

使用表達式編輯器構造任何複雜的表達式

有關示例,請參考計算高級摘要

使用報告腳本

有關示例,請參考計算自定義摘要

有條件地自定義外觀

表達式綁定

數據綁定

使用表達式編輯器構造控件的外觀和樣式屬性的表達式

 

有關示例,請參閱有條件地更改控件的外觀

創建格式設置規則,並將其分配給報表控件。

有關示例,請參閱有條件地更改控件的外觀

設置綁定模式

指定靜態UserDesignerOptions.DataBindingMode屬性以選擇報表使用的綁定模式。您可以將此屬性設置爲以下DataBindingMode枚舉值:

在設計時,可以使用“ 報表設計器選項”對話框在Visual Studio中設置DataBindingMode屬性。

報告設計器選項對話框

注意

更改綁定模式後,重新加載報表設計器。

使用以下代碼指定最終用戶報表設計器的DataBindingMode屬性:

static class Program {
    static void Main() {
        DevExpress.XtraReports.Configuration.Settings.Default.UserDesignerOptions.DataBindingMode = 
            DevExpress.XtraReports.UI.DataBindingMode.ExpressionsAdvanced;
        // ...
    }
}
 

將綁定轉換爲表達式

內置的自動報告轉換工具可幫助您轉換現有報告以使用新的綁定機制。該工具在以下情況下運行:

在設計時,可以使用“ 報表設計器選項”對話框在Visual Studio中設置ConvertBindingsToExpressions屬性。

使用對話框將綁定轉換爲表達式

 

使用以下代碼指定最終用戶報表設計器的ConvertBindingsToExpressions屬性:

static class Program {
    static void Main() {
        DevExpress.XtraReports.Configuration.Settings.Default.UserDesignerOptions.ConvertBindingsToExpressions = 
                DevExpress.XtraReports.UI.PromptBoolean.True;
        // ...
    }
}
 

在以下情況下,您將無法轉換報告:

  • 報表包含一個或多個控件,這些控件綁定到未分配爲報表數據源的數據源。
  • 報告包含格式規則,其數據源與報告的數據源不同。

注意

無法將報表從表達式轉換回舊式綁定。

也可以看看
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章