Skip to main content
All docs
V26.1
  • FullscreenReportWizardPageIterator Class

    Defines the Report Wizard‘s page sequence.

    Declaration

    export class FullscreenReportWizardPageIterator extends PageIterator<DevExpress.Reporting.Designer.Wizard.IReportWizardState>

    Remarks

    Use this class to change the page count and/or sequence. For instance, you can remove a specific wizard page or register a new page.

    1. Handle the wizard’s afterInitialize event.
    2. Use the event argument’s wizard property and access the iterator object.
    3. Override the iterator’s getNextPageId method that returns the next wizard page’s ID based on the current page’s ID passed as the parameter. Use the FullscreenReportWizardPageId values to identify page IDs.

    The following example demonstrates how to hide the Select Data Source page from the Report Wizard and enable users to create SQL data sources only.

    <script type="text/javascript">
       function beforeInit(args) {
           args.state.dataSourceType = 1;
       }
    
       function afterInit(args) {
           // Remove the "Select Data Source" page's metadata from the factory.
           args.wizard.pageFactory.unregisterMetadata(DevExpress.Reporting.Designer.Wizard.FullscreenReportWizardPageId.SelectDataSourcePage);
           // Override the navigation logic to skip the "Select Data Source" page.
           var defaultGetNextPageId = args.wizard.iterator.getNextPageId;
           args.wizard.iterator.getNextPageId = function (pageId) {
               if (pageId === DevExpress.Reporting.Designer.Wizard.FullscreenReportWizardPageId.SelectReportTypePage) {
                   return DevExpress.Reporting.Designer.Wizard.FullscreenReportWizardPageId.SpecifySqlDataSourceSettingsPage;
               } else {
                   return defaultGetNextPageId.apply(this, [pageId]);
               }
           }
       }
    
       function CustomizeWizard(s, e) {
           if (e.Type === "ReportWizard") {
               e.Wizard.events.addHandler("beforeInitialize", beforeInit)
               e.Wizard.events.addHandler("afterInitialize", afterInit)
           }
       }
    </script>
    
    <dx:ASPxReportDesigner ID="ASPxReportDesigner2" runat="server">
        <ClientSideEvents CustomizeWizard="CustomizeWizard" />
    </dx:ASPxReportDesigner>
    

    The resulting Report Wizard:

    See the following topics for more information:

    Inherited Members

    Inheritance

    PageIterator<T>
    FullscreenReportWizardPageIterator

    constructor(pagesFactory, stateManager, _onResetPage, _reportWizardOptions)

    Initializes a new instance of the FullscreenReportWizardPageIterator class with specified settings.

    Declaration

    constructor(
        pagesFactory: DevExpress.Analytics.Wizard.PageFactory,
        stateManager: DevExpress.Analytics.Wizard.StateManager,
        _onResetPage: (page: DevExpress.Analytics.Wizard._WrappedWizardPage) => void,
        _reportWizardOptions: DevExpress.Reporting.Designer.Wizard._ReportWizardOptions
    )

    Parameters

    Name Type
    pagesFactory PageFactory
    stateManager StateManager
    _onResetPage (page: _WrappedWizardPage) => void
    _reportWizardOptions _ReportWizardOptions

    Methods

    getNextPageId Method

    Returns the next page’s ID.

    Declaration

    getNextPageId(
        pageId?: string
    ): string

    Parameters

    Name Type Description
    pageId string

    The current page’s ID.

    Returns

    Type Description
    string

    The next page’s ID.

    Remarks

    Use this method to change the page count and/or sequence. For instance, you can remove a specific wizard page or register a new page.

    See the following topics for more information: