• c# 水晶报表中处理TextObject


    代码
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
     
    using CrystalDecisions.CrystalReports.Engine;
    using CrystalDecisions.ReportAppServer.ClientDoc;
    using CrystalDecisions.ReportAppServer.DataDefModel;
     
     
    public partial class _Default : System.Web.UI.Page 
    {
        
    protected ReportDocument boReportDocument;
     
     
        
    protected void Page_Load(object sender, EventArgs e)
        {
            
    if (!this.IsPostBack)
            {
                ConfigureCrystalReports();
            }
     
            CrystalReportViewer1.ReportSource 
    = Session["Report"];
     
        }
     
        
    protected void ConfigureCrystalReports()
        {
            ISCDReportClientDocument boReportClientDocument;        
            CrystalDecisions.ReportAppServer.Controllers.ReportObjectController boReportObjectController;
            CrystalDecisions.ReportAppServer.ReportDefModel.TextObject boOldTextObject, boNewTextObject;
            CrystalDecisions.ReportAppServer.ReportDefModel.Paragraph boParagraph;
            CrystalDecisions.ReportAppServer.ReportDefModel.ParagraphFieldElement boParagraphFieldElement;
            CrystalDecisions.ReportAppServer.ReportDefModel.ParagraphTextElement boParagraphTextElement;
            
            boReportDocument 
    = new ReportDocument();
            boReportDocument.Load(Server.MapPath(
    "CrystalReport.rpt"));
     
            boReportClientDocument 
    = boReportDocument.ReportClientDocument;        
            boReportObjectController 
    = boReportClientDocument.ReportDefController.ReportObjectController;
                   
     
            
    // Get a handle on the ReportObjectController so we can manipulate the TextObject        
            foreach (CrystalDecisions.ReportAppServer.ReportDefModel.ReportObject boReportObject in boReportObjectController.GetAllReportObjects())
            {
                
    if (boReportObject.Kind == CrystalDecisions.ReportAppServer.ReportDefModel.CrReportObjectKindEnum.crReportObjectKindText)
                {
                    boOldTextObject 
    = (CrystalDecisions.ReportAppServer.ReportDefModel.TextObject)boReportObject;
                    boNewTextObject 
    = (CrystalDecisions.ReportAppServer.ReportDefModel.TextObject)boOldTextObject.Clone(true);
                    
                    
    // Clear out all paragraphs from the current text object
     
                    boNewTextObject.Paragraphs.RemoveAll();
     
                    
    // Create a new Paragraph to add to our TextObject
                    boParagraph = new CrystalDecisions.ReportAppServer.ReportDefModel.Paragraph();
     
                    
    // Create a new ParagraphTextElement to be added to our paragraph
                    
                    boParagraphTextElement 
    = new CrystalDecisions.ReportAppServer.ReportDefModel.ParagraphTextElement();                
                    boParagraphTextElement.Text 
    = "The value of my parameter is: ";
                    boParagraph.ParagraphElements.Add(boParagraphTextElement);                
     
                    
    // Create a new ParagraphFieldElement (our parameter field) to be added to our paragraph                
                    boParagraphFieldElement = new CrystalDecisions.ReportAppServer.ReportDefModel.ParagraphFieldElement();
                    boParagraphFieldElement.Kind 
    = CrystalDecisions.ReportAppServer.ReportDefModel.CrParagraphElementKindEnum.crParagraphElementKindField;
                    boParagraphFieldElement.DataSource 
    = "{?Currency}";                
     
                    boParagraph.ParagraphElements.Add(boParagraphFieldElement);
                    
                    boNewTextObject.Paragraphs.Add(boParagraph);
                    
                    boReportObjectController.Modify(boOldTextObject, boNewTextObject);
     
                    
    break;
                }
            }
     
            Session.Add(
    "Report", boReportDocument);
        }
    }


    继续追寻。。。。。。
  • 相关阅读:
    Unity 简易的UI背景昼夜轮替效果
    UE4 射线拾取&三维画线
    基于地产的消费生态群构想
    Unity插件
    Android5.1设备无法识别exFAT文件系统的64G TF卡问题
    MBR和GPT概要学习
    Linux驱动基础:MSM平台AP/CP通信机制
    使用UE4/Unity创建VR项目
    Unity UGUI基础之InputField
    Android组件内核之间组件间通信方案(四)下篇
  • 原文地址:https://www.cnblogs.com/lfzwenzhu/p/1879761.html
Copyright © 2020-2023  润新知