以下是編程更改報表上文本對象中文本的示例,此處假設已有CrystalReportAnalysis.rpt文件,其上放置有一個Name爲Text1的文本對象!
using CrystalDecisions.CrystalReports.Engine;
private const string REPORT_NAME = @"../../CrystalReportAnalysis.rpt";
private const string TEXT_OBJECT_NAME = @"Text1";
private void Form1_Load(object sender, System.EventArgs e)
{
report = new ReportDocument();
report.Load(REPORT_NAME);
report.Refresh();
crvChart.ReportSource = report;
}
private void btnChangeText_Click(object sender, System.EventArgs e)
{
TextObject text;
text = GetTextObject(TEXT_OBJECT_NAME);
text.Text = "Hello, Haibo.NET!";
crvChart.RefreshReport();
}
private TextObject GetTextObject(string reportObjectName)
{
TextObject text;
// 按名稱獲取 ReportObject,將其轉換爲 TextObject,
//並返回此對象。
text = report.ReportDefinition.ReportObjects[reportObjectName] as TextObject;
if (text != null) return text;
else return null;
}