Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

WebDocumentViewerClientSideEventsBuilder.DocumentReady(String) Method

Sets the name of the JavaScript function or the entire code that will handle the Web Document Viewer’s DocumentReady client-side event.

Namespace: DevExpress.AspNetCore.Reporting.WebDocumentViewer

Assembly: DevExpress.AspNetCore.Reporting.v24.2.dll

NuGet Package: DevExpress.AspNetCore.Reporting

#Declaration

public WebDocumentViewerClientSideEventsBuilder DocumentReady(
    string callback
)

#Parameters

Name Type Description
callback String

The name of a JavaScript function or the entire JavaScript function code used to handle the DocumentReady event.

#Returns

Type Description
WebDocumentViewerClientSideEventsBuilder

A WebDocumentViewerClientSideEventsBuilder object that can be used to further configure Document Viewer client side events.

#Remarks

The DocumentReady event enables you to trigger actions when the Document Viewer loads a report and creates a document.

The event handler function receives two parameters. The first parameter is the event sender, which is the ClientDocumentViewer object. The second parameter is an object that has the following properties:

  • ReportId
    The report ID.

  • DocumentId
    The ID of the document that is ready to be shown in the Web Document Viewer.

  • PageCount
    The total number of pages in a report document.

#Example: Page Navigation

The following code snippet demonstrates how to navigate through the pages of a document when it is created.

<script type="text/javascript" id="script"> 
    function documentReady(s, e) {
        var previewModel = s.GetPreviewModel();
        var goToNextPage = function () {
            var pageIndex = previewModel.GetCurrentPageIndex();
            if (e.PageCount <= pageIndex)
                return;
            previewModel.GoToPage(pageIndex + 1);
            setTimeout(function () { goToNextPage(); }, 3000);
        }
        goToNextPage();
    }
</script>

@{
    var documentViewer = Html.DevExpress().WebDocumentViewer("webDocumentViewer1")
        .Height("1000px")
        .Bind(Model.Report)
        .ClientSideEvents(configure => { configure.DocumentReady("documentReady"); });;
}
@documentViewer

#Example: Show the Document Map Panel Automatically

The following code sample shows the Document Map Panel when the Document Viewer has loaded a report and the document has been built:

@{
    var viewerRender = Html.DevExpress().WebDocumentViewer("DocumentViewer")
        .Height("1000px")
        .ClientSideEvents(configure =>
        {
            configure.DocumentReady(@"function(s, e) {
                var preview = s.GetPreviewModel();
                if (preview)
                {
                    preview.tabPanel.tabs[3].active = true;
                }
            }
            ");
        })
    .Bind("TestReport");
    @viewerRender.RenderHtml()
}
See Also