首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#中使用水晶报表的有关问题

2012-02-04 
C#中使用水晶报表的问题在水晶报表中添加了两个未绑定的日期字段(应该是公式字段吧),想在程序里把两个data

C#中使用水晶报表的问题
在水晶报表中添加了两个未绑定的日期字段(应该是公式字段吧),想在程序里把两个datatimepicker的值赋给这两个字段, 然后显示报表。结果在报表中显示的是1998,00,我定义的格式应该是yyyy-MM-dd的格式,怎么会显示那个啊~语句如下:
报表中两个日期字段:StartDate,EndDate
Report1 rpt=new Report1();//Report1是我的报表
rpt.SetDataSource(ds);//ds是SQL语句返回的DataSet
rpt.DataDefinition.FormulaFields["StartDate"].Text=dtStartDate;//dtStartDate是我的datatimepicker的名称
rptViewer.ReportSource=rpt;//rptViewver是CrystalReportViewer

程序里datatimepicker是2008-03-01的格式,但是到了报表显示就成了1998,00,不知道怎么回事?用MessageBox.Show()测试rpt.DataDefinition.FormulaFields["StartDate"].Text正常,怎么显示就不正常了?

[解决办法]
1.先在报表中拖放一个文本框,设置对象名称为txtFindDate

 2.
TextObject text;

// 按名称获取 ReportObject,将其转换为 TextObject,
//并返回此对象。
text = dayReportSum1.ReportDefinition.ReportObjects["txtFindDate"] as TextObject;
if (text != null) text.Text = date1.Date.ToString("yyyy-MM-dd") + " 至 " + date2.Date.ToString("yyyy-MM-dd");

热点排行