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

    Stores metadata for all wizard pages.

    Declaration

    export class FullscreenWizardPageFactory extends PageFactory

    Remarks

    The page factory stores metadata for all wizard pages by their IDs. A metadata object implements the IFullscreenWizardPageMetadata interface. The StateManager uses its getState and setState methods to manipulate with a local page state.

    You can use the page factory’s unregisterMetadata method to remove a specific page from the wizard.

    1. Handle the wizard’s afterInitialize event.
    2. Use the event argument’s wizard property to access the pageFactory object.
    3. Call this object’s unregisterMetadata method and pass the corresponding FullscreenReportWizardPageId/FullscreenDataSourceWizardPageId enumeration value as the parameter. This removes the page’s metadata from the factory and hides the page from the navigation panel.
    4. Use the event argument’s wizard property to access the iterator object and override its getNextPageId method to remove the page from the navigation logic.

    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 beforePageInit(args) {
           // Identify the "Select Data Source" page.
           if (args.pageId === DevExpress.Reporting.Designer.Wizard.FullscreenReportWizardPageId.SelectDataSourcePage) {
               // Remove the page's section that displays available data sources.
               args.page.unregisterSection(DevExpress.Reporting.Designer.Wizard.FullscreenReportWizardSectionId.ChooseAvailableDataSourcePage);
               // Make the "Select data source type" section occupy the entire page.
               args.page.setSectionPosition(DevExpress.Reporting.Designer.Wizard.FullscreenReportWizardSectionId.ChooseDataSourceTypePage);
               // Override the navigation logic to skip the removed section.
               args.page.getNextSectionId = function(sectionId) {
                   if(!sectionId) return DevExpress.Reporting.Designer.Wizard.FullscreenReportWizardSectionId.ChooseDataSourceTypePage;
               }
           }
       }
    
       function CustomizeWizard(s, e) {
           if(e.Type === "ReportWizard") {
               e.Wizard.events.addHandler("beforePageInitialize", beforePageInit)
           }
       }
    </script>
    
    <dx:ASPxReportDesigner ID="ASPxReportDesigner3" runat="server">
        <ClientSideEvents CustomizeWizard="CustomizeWizard" />
    </dx:ASPxReportDesigner>
    

    The resulting Report Wizard:

    See the following topics for more information:

    Inherited Members

    Inheritance

    PageFactory
    FullscreenWizardPageFactory

    Properties

    metadata Property

    Specifies the collection of metadata objects for wizard pages.

    Declaration

    metadata: {
        [key: string]: IFullscreenWizardPageMetadata<DevExpress.Analytics.Wizard.IWizardPage>;
    }

    Property Value

    Type Description
    [key: string]: IFullscreenWizardPageMetadata<IWizardPage>

    The collection of metadata objects.

    Methods

    getMetadata(key) Method

    Returns the specified page’s metadata.

    Declaration

    getMetadata(
        key: string
    ): IFullscreenWizardPageMetadata<DevExpress.Analytics.Wizard.IWizardPage>

    Parameters

    Name Type Description
    key string

    The page ID.

    Returns

    Type Description
    IFullscreenWizardPageMetadata<IWizardPage>

    The page metadata.

    registerMetadata<T>(pageId, metadata) Method

    Registers the specified page metadata.

    Declaration

    registerMetadata<T extends DevExpress.Analytics.Wizard.IWizardPage>(
        pageId: string,
        metadata: IFullscreenWizardPageMetadata<T>
    ): void

    Parameters

    Name Type Description
    pageId string

    The page ID.

    metadata IFullscreenWizardPageMetadata<T>

    The page metadata.

    Type Parameters

    Name Type Description
    T IWizardPage

    The page.

    Remarks

    Use this method to add a new page to the wizard.