首页新闻找找看学习计划

FastReport打印问题

0
悬赏园豆:50 [已解决问题] 解决于 2010-11-16 13:55

FastReport 有谁知道怎么去掉打印时弹出框吗?就是直接打印,不要弹出框。

            FastReport.TfrxReportClass report = new FastReport.TfrxReportClass();
            report.LoadReportFromFile(AppDomain.CurrentDomain.BaseDirectory + "Report_CHS\\" + reportName);
            report.SetVariable("SerialID", "'" + SerialID + "'");
            report.SetVariable("Connstring", "'" + connstring + "'");
            report.PrepareReport(true);
            report.ShowProgress = false;
            report.PrintReport();

void230的主页 void230 | 初学一级 | 园豆:30
提问于:2010-11-11 15:35
< >
分享
最佳答案
0

以下是我写的一个fastreport调fr3模板的类

 

 

public class Fr3Access : ReportAccess
{
TfrxReportClass report;

FrxDataTable datatable;

FrxDataSet dataset;


protected override void InitReport()
{
base.InitReport();
report
= new TfrxReportClass();
}

public override void LoadReportFromFile(string filePath)
{
report.LoadReportFromFile(filePath);
}


public override void BindDataSet(System.Data.DataSet ds)
{
DataTable dt
= ds.Tables[0];
ds.Tables.Remove(dt);

datatable
= new FrxDataTable(dt);
datatable.Rows.Clear();
datatable.Merge(dt);
dataset
= new FrxDataSet();
dataset.Tables.Add(datatable);
dataset.Tables[
0].TableName = "ADOQuery1";

dataset.BindToReport(report);
dataset.BindTableToBand(dataset.Tables[
0].TableName, report, "MasterData1");

}

public override void Design()
{
report.DesignReport();
}

public override void ShowReport()
{
report.ShowReport();
}

public override void PrintReport()
{
report.PrepareReport(
true);
report.PrintReport();
}
}

 

 

 

用法就:

 

InitReport();
LoadReportFromFile(
string filePath);
BindDataSet();
PrintReport();
//看上去和你的差别就是你的数据源在报表里,我的是传dataset,这段代码我已经用在项目中的,不会出现打印预览,还有问题胡话,可以联系我MSN:lang_colys@msn.com

 

 

收获园豆:50
colys | 菜鸟二级 |园豆:239 | 2010-11-11 20:59
其他回答(1)
0

Fastreport目前似乎可以免费分发了,之前是要收费的,这是新闻:FastReport Site彻底保障商业化开发

cpu占用率过高 | 园豆:203 (菜鸟二级) | 2013-10-16 16:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册