• <menu id="w2i4a"></menu>
  • logo FastReport中文文檔

    文檔首頁>>FastReport中文文檔>>內(nèi)置組件說明

    內(nèi)置組件說明


    以下是對 中包含的組件的描述FastReport.Web。我們不建議使用除 之外的組件WebReportContainer,因為它們在標(biāo)準(zhǔn)組件樹之外可能不穩(wěn)定。

    但是,要微調(diào)渲染,您可能需要使用其他組件。

    • Web報表容器

    執(zhí)行渲染的主要且最通用的 Blazor 組件WebReport<WebReportContainer/>它位于命名空間中FastReport.Web.Blazor.Components。

    它采用的唯一參數(shù)是該類的對象WebReport。這意味著要使用該組件,您必須創(chuàng)建該類的一個對象WebReport,為其分配一個Report以及其他必要的參數(shù),并將該對象傳遞給參數(shù)WebReportContainer

    例子
    <WebReportContainer WebReport="@UserWebReport" />
    
    @code {
        public WebReport UserWebReport { get; set; }
    
        protected override void OnParametersSet()
        {
            var report = Report.FromFile(
            Path.Combine(
                directory,
                "My report.frx"));
    
            // Registers the application dataset
            Report.RegisterData(DataSet, "NorthWind");
    
            UserWebReport = new WebReport();
            UserWebReport.Report = Report;
        }
    }

    點擊復(fù)制

    該組件可以定義不同的模式(設(shè)計器、對話框和普通預(yù)覽),并可以準(zhǔn)備報告、嵌入默認(rèn)樣式和單獨樣式、顯示工具欄、大綱和選項卡、處理交互式報告等。

    • 網(wǎng)絡(luò)報告預(yù)覽

    它與前面的組件類似,但沒有考慮設(shè)計器模式。也就是說,它總是嘗試準(zhǔn)備并提交報告。

    • 報告容器

    它與之前的組件類似,但不包括加載WebReport樣式(工具欄/選項卡/大綱的通用和單獨)。

    它負(fù)責(zé)報告的準(zhǔn)備以及隨后與工具欄和選項卡(如果需要)一起顯示。

    當(dāng)使用任何交互性(單擊報告/使用對話框表單)時,更新的是該組件。

    • 報表主體/導(dǎo)出組件

    調(diào)用ReportBody大綱呈現(xiàn)(如果需要)并“嵌套”一個組件,該組件是報表本身的呈現(xiàn) ( ExportComponent),并將其ReportContainer傳遞給它。不建議使用。

    • Blazor導(dǎo)出

    組件的“最低”級別根本不是組件,而是其本身 - 用于將準(zhǔn)備好的報告導(dǎo)出為RenderTreeBuilderBlazorExport構(gòu)建格式的工具。位于命名空間中。FastReport.Web.Blazor.Export

    要構(gòu)建此導(dǎo)出,您必須:

    1. 準(zhǔn)備報告;
    2. 確保此報告不使用對話框表單(它們是使用 呈現(xiàn)的,DialogPageComponent并且不在本教程中介紹);
    3. 創(chuàng)建自己的組件并在其中顯式定義構(gòu)造方法(調(diào)用方法的重寫BuildRenderTree);
    4. 在此構(gòu)建方法中,創(chuàng)建一個BlazorExport實例,設(shè)置其所需的屬性,然后調(diào)用 Export 并傳遞以下參數(shù):一個 Report 和一個構(gòu)建器實例(該實例是此重寫方法的參數(shù))。
       /// Main function
            protected override void BuildRenderTree(RenderTreeBuilder builder)
            {
                using (BlazorExport blazor = new BlazorExport())
                {
                    blazor.StylePrefix = $"fr{WebReport.ID}";
                    blazor.EmbedPictures = true;
                    blazor.OnClick += ProcessClick;
                    blazor.EnableMargins = WebReport.EnableMargins;
                    blazor.SinglePage = true;
                    blazor.CurPage = WebReport.CurrentPageIndex;
    
                    blazor.Export(myReport, builder);
               }
           }

    點擊復(fù)制

    • 在線設(shè)計師

    目前,Online Designer 可以使用 javascript 在 iframe 元素中工作,并且與 Core 的 Online Designer 程序集完全兼容。

    要僅使用設(shè)計器的功能,您可以調(diào)用該<IFrameDesigner/>組件,并向其傳遞WebReport帶有配置的 Report 屬性和可選的DesignerLocaleand 的參數(shù)DesignerPath

     <IFrameDesigner WebReport="CurrentWebReport" />

    點擊復(fù)制

    但是,我們提醒您,該WebReportContainer組件了解它當(dāng)前正在使用哪種模式,并且根本沒有必要以IFrameDesigner這種形式進(jìn)行調(diào)用。



    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();