公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C# WinForm實(shí)現(xiàn)打印模板自定義、預(yù)覽、打印功能

admin
2025年3月24日 23:31 本文熱度 593

一、效果展示

二、VS2022

界面設(shè)計(jì):

后端代碼

?
模板設(shè)計(jì)

項(xiàng)目文件

三、核心代碼

/// <summary>
/// 設(shè)計(jì)模板
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>private void button1_Click(object sender, EventArgs e){ StiDesigner designer = new StiDesigner(report);
StiDesigner.SavingReport += StiDesigner_SavingReport;
report.RegData("TableVo"new WeightVo() { Code = "", Name = "" });
report.Compile();
report.Design();}
/// <summary>
/// 保存模板
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>private void StiDesigner_SavingReport(object sender, StiSavingObjectEventArgs e){
// 獲取項(xiàng)目輸出目錄的路徑
string outputDirectory = AppDomain.CurrentDomain.BaseDirectory;
report.Save($"{outputDirectory}\\Report.mrt");
MessageBox.Show("保存成功!");}
/// <summary>
/// 預(yù)覽模板
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e){ // 獲取項(xiàng)目輸出目錄的路徑
string outputDirectory = AppDomain.CurrentDomain.BaseDirectory;
report.Load($"{outputDirectory}\\Report.mrt");
report.RegData("TableVo"new WeightVo() { Code = "001", Name = "這是一個(gè)打印測(cè)試模板" });
report.Compile();
report.Show();}
/// <summary>
/// 打印模板
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, EventArgs e){
// 獲取項(xiàng)目輸出目錄的路徑
string outputDirectory = AppDomain.CurrentDomain.BaseDirectory;
report.Load($"{outputDirectory}\\Report.mrt");
report.RegData("TableVo"new WeightVo() { Code = "001", Name = "這是一個(gè)打印測(cè)試模板" });
report.Compile();
report.Print();
}

四、性能優(yōu)化

?首次加載慢?

提前初始化和編譯模板,減少運(yùn)行時(shí)延遲:

report = new StiReport();report.Load(strPath);  report.Dictionary.Synchronize();  // 提前加載并同步 ?:ml-citation{ref="2" data="citationList"}

?多線(xiàn)程打印卡頓?

避免重復(fù)加載模板,直接渲染已編譯的報(bào)表:

//report.Load(strPath);  // 注釋掉重復(fù)加載report.Render();  StiPrinterSettings settings = new StiPrinterSettings();  // 配置打印參數(shù) ?:ml-citation{ref="2" data="citationList"}

五、文字自動(dòng)縮放

通過(guò)設(shè)計(jì)器調(diào)整文本框?qū)傩砸赃m配內(nèi)容:

選中文本框 → 設(shè)置 AutoWidth 和 AutoHeight 為 true。

在 Font 屬性中啟用 Auto 選項(xiàng) ?6。

調(diào)整文本框尺寸后運(yùn)行驗(yàn)證效果。

五、常見(jiàn)問(wèn)題處理

?組件查找與操作

StiComponent component = report.GetComponentByName("ComponentName");  // 按名稱(chēng)查找組件 ?:ml-citation{ref="7" data="citationList"}component.Bookmark = "{Categories.CategoryName}";  // 添加書(shū)簽 ?:ml-citation{ref="7" data="citationList"}

?排序設(shè)置

DataBand1.Sort = new string?:ml-citation{ref="2" data="citationList"} { "ASC""Name" };  // 按字段升序排列 ?:ml-citation{ref="7" data="citationList"}

StiReport 核心定義與功能

?StiReport? 是 ?Stimulsoft? 公司開(kāi)發(fā)的一款跨平臺(tái)報(bào)表生成工具,主要用于設(shè)計(jì)和生成動(dòng)態(tài)數(shù)據(jù)驅(qū)動(dòng)的專(zhuān)業(yè)報(bào)表。其核心特性包括:

?多平臺(tái)支持?

支持在 ?WinForms?、?ASP.NET?、?.NET Core?、?JavaScript?、?WPF? 等環(huán)境中使用,適用于桌面、Web 及移動(dòng)端應(yīng)用開(kāi)發(fā)?。

?動(dòng)態(tài)數(shù)據(jù)綁定?

可靈活綁定數(shù)據(jù)庫(kù)表、對(duì)象列表等數(shù)據(jù)源,支持運(yùn)行時(shí)動(dòng)態(tài)更新數(shù)據(jù)。例如,通過(guò) RegData 方法注冊(cè)數(shù)據(jù)表并同步字典以識(shí)別新字段?。

?模板設(shè)計(jì)與導(dǎo)出?

通過(guò) .mrt 模板文件定義報(bào)表布局,支持導(dǎo)出為 ?PDF?、?Excel?、?HTML? 等格式,并集成打印功能?。

典型使用場(chǎng)景

?企業(yè)級(jí)應(yīng)用?

適用于財(cái)務(wù)系統(tǒng)、銷(xiāo)售統(tǒng)計(jì)等需要復(fù)雜報(bào)表展示的場(chǎng)景?。

?多平臺(tái)開(kāi)發(fā)?

在混合技術(shù)棧(如 WinUI、PHP、Java)中統(tǒng)一報(bào)表生成邏輯,減少重復(fù)開(kāi)發(fā)成本?。

?動(dòng)態(tài)數(shù)據(jù)需求?

處理頻繁變化的數(shù)據(jù)源,例如實(shí)時(shí)庫(kù)存報(bào)告或訂單狀態(tài)更新?。

技術(shù)實(shí)現(xiàn)要點(diǎn)

?模板加載與優(yōu)化?

首次加載模板時(shí)建議預(yù)編譯并同步數(shù)據(jù)字典,避免運(yùn)行時(shí)延遲?。

?數(shù)據(jù)源管理?

動(dòng)態(tài)更新數(shù)據(jù)前需清除舊數(shù)據(jù)源(Dictionary.DataSources.Clear()),防止殘留數(shù)據(jù)沖突?。

與其他報(bào)表工具的區(qū)別

StiReport 強(qiáng)調(diào) ?跨平臺(tái)兼容性? 和 ?動(dòng)態(tài)數(shù)據(jù)交互能力?,其設(shè)計(jì)器提供可視化操作界面,降低代碼依賴(lài),適合快速生成復(fù)雜格式的報(bào)表?。


閱讀原文:原文鏈接


該文章在 2025/3/25 10:37:47 編輯過(guò)
關(guān)鍵字查詢(xún)
相關(guān)文章
正在查詢(xún)...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶(hù)的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品亚洲片精品 | 高清无码精品视频 | 韩国美女跳舞蹈视频 | 国产成人v一区二区 | 国产精品国产三级国aⅴ麻豆 | 91在线精品国产电影 | 国产精品女视频一区二区 | 精品国产丝袜黑色高跟鞋 | 国产成年人免费视频 | 2025久久国自产拍 | 国产麻豆精品精东影业av网站 | 国产日韩欧美满嘴射 | 国产三片理论电影在线 | 国产午夜精品91久久影院无码 | 国产自愉自愉免费24区 | 国产一级毛片大陆 | av亚欧洲日产国码无 | 国产精品一区二区剧情熟女 | 国产成人手机版免费播放 | 国产在线无码免费播放视频 | 2025久久国自产拍精品 | 国产精品无码久久久久久免费 | 国产精品毛片高清在线完整版 | 国产二区三区毛片 | 国产精品美女久久久久久久 | 精品国产人妻一区二 | 国产91精品久久二区二区 | 高潮毛片无遮挡免费高清 | 91无码人区精品一区二区三区 | 精品一区二区高清在线 | 91桃色视频在线观看 | 国产一级av女优毛片 | 国产美女裸身无遮挡网站 | 国产一区在线观看无码av | 99尹人香蕉国产免费天天 | 精品人妻无码专区在中文字幕 | 国产一区二区在线观看免费 | 2025国产精品自在自线 | 国产aⅴ无码精品一区二区三区 | 国产精品无码专区在线观看不卡 | 国产极品人妖在线观看 |