亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎樣創建自定義DevExpress報表控件

發布時間:2021-12-21 11:08:39 來源:億速云 閱讀:109 作者:柒染 欄目:大數據

怎樣創建自定義DevExpress報表控件,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

如何構建自定義的DevExpress Report控件(Swiss QR-Bill報表組件),以及如何解決開發過程中遇到的問題,希望這些信息對創建自定義DevExpress Report控件的用戶有價值。

為幫助消除報表控件開發過程中的神秘性,下面如何創建設計時設置、序列化設計器組件和相關的“bricks”,以及如何渲染和打印組件。第一部分包含有關Swiss QR Bill控件的一般信息,并描述控件本身的要求;第二部分詳細介紹了組件的實現。

一般信息

Swiss QR Bill是一種帶有QR碼的新型付款單,Swiss QR Bill包含以下元素:

  • 收據

  • 付款部分

  • 條碼

發票可以使用以下布局:

  • 在A4紙上打印的“全額”發票;

  • 在A6紙上打印的“簡短”發票;

  • 連續打印發票;

  • 在單個頁面上打印的發票。

“完整”發票包含收據,而“空”發票僅包含付款信息。 組件的BillKind屬性指定完整發票的PaymentAndReceipt值和短期發票的PaymentOnly值,連續打印或單獨打印是通過IntegratedMode屬性指定的。

將發票打印在A4或A6紙上(或導出為PDF),并分別通過BillOption.PreviewSeparatorKind和BillOption.PdfSeparatorKind屬性指定perforation line。該組件允許您更改任何字段的語言和字體,StringData屬性可用于將字段綁定到外部數據源。

報表控件開發–概述

若要創建一個新的報表控件,您必須:

  1. 選擇一個base類,如果找不到合適的控件派生,請從XRControl類繼承一個組件。

  2. 創建組件的對象模型,指定一組屬性和相關屬性,這些屬性決定如何序列化屬性以及如何在Property網格中顯示屬性。

  3. 為Visual Studio和End User Designer創建組件設計器,設計人員在設計時確定組件的外觀和操作,根據需要添加屬性。

  4. 選擇組件的“brick”,一個明顯的選擇是基類創建的積木,但是,如果組件從XRControl類繼承,則有兩個選項 - 如果需要簡單的Brick,則選擇VisualBrick作為Brick的基類;如果需要的容器,則選擇PanelBrick。

  5. 指定組件如何創建其"brick",并將組件的屬性映射到brick的特征。

  6. 實現BrickExporter類來呈現 "brick",覆蓋用于繪圖和導出的方法。


組件實現

由于SwissQRBill組件是XRControl的后代,因此它在設計器的工具箱中具有自己的 "brick"、序列化和項。

設計時

要將組件添加到Visual Studio工具箱,該組件必須具有ToolBoxItem(true)屬性。

WinForms End-User Designer要求向IToolBoxService注冊該組件,處理DesignPanelLoaded事件,然后調用IToolBoxService.AddToolBoxItem方法來注冊組件。

若要實現組件的設計時功能,請分別為Visual Studio和WinForms End-User Designer添加Designer和XRDesigner屬性。控件的調整大小規則和智能標記項必須根據需要進行修改,智能標記項是通過在組件設計器中注冊的DesignerActionList對象指定的, GetSelectionRulesCore方法修改控件的調整大小規則。

設置屬性網格時,請特別注意可擴展對象。 在此示例中,將創建ExpandableObjectConverter后代以重寫ConvertTo方法,新的ConvertTo方法實現更改了在屬性網格編輯器中顯示的字符串。 AddressTypeConverter的GetProperties方法刪除該地址類型不必要的屬性。

關于怎樣創建自定義DevExpress報表控件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盘锦市| 金湖县| 富锦市| 永宁县| 偏关县| 盐山县| 全椒县| 苏尼特右旗| 泰安市| 平阴县| 冷水江市| 政和县| 浮山县| 左云县| 绥阳县| 英德市| 门源| 广汉市| 阜宁县| 武夷山市| 桐梓县| 盐亭县| 洪江市| 南城县| 肇东市| 闽清县| 海淀区| 巴马| 阿克陶县| 普格县| 永新县| 九龙城区| 永仁县| 双峰县| 天镇县| 田林县| 宁波市| 临高县| 来宾市| 镇沅| 通榆县|