EditExtractOptionsContext Class
Provides data for the Data Source Wizard pages related to the ExtractDataSource type.
Namespace: DevExpress.DashboardWin
Assembly: DevExpress.Dashboard.v24.2.Win.dll
Declaration
Example
This example demonstrates how to customize the Data Source Wizard pages and invoke a customized Wizard in the DashboardViewer.
The static EditExtractOptions(DashboardExtractDataSource, EditExtractOptionsContext) method invokes the Data Source Wizard.
To customize the Edit extract page, the application uses the approach described in the following document: How to Customize Views and Presenters Corresponding to Wizard Pages.
![](~/images/how-to-customize -extract-datasource-wizard.png)
private void btn_RunWizard_Click(object sender, EventArgs e) {
EditExtractOptionsContext optionsContext = new EditExtractOptionsContext(this.GetActiveLookAndFeel(), this, dashboardViewer1.Dashboard.DataSources);
optionsContext.WizardCustomization = new CustomExtractDataSourceWizardCustomizationService();
ExtractDataSourceUIHelper.EditExtractOptions(new DashboardExtractDataSource() { FileName = "test.dat" }, optionsContext);
}
It implements the IExtractDataSourceWizardCustomization interface in a CustomExtractDataSourceWizardCustomizationService class to register a customized page view:
public class CustomExtractDataSourceWizardCustomizationService : IExtractDataSourceWizardCustomization {
public void CustomizeDataSourceWizard(IWizardCustomization<ExtractDataSourceModel> customization) {
customization.RegisterPageView<ICreateExtractDataSourcePageView, CustomConfigureExtractDataSourcePageView>();
}
}
A customized page view is the CustomConfigureExtractDataSourcePageView class that inherits the CreateExtractDataSourcePageView type:
public class CustomConfigureExtractDataSourcePageView : CreateExtractDataSourcePageView {
public CustomConfigureExtractDataSourcePageView() : base() {
this.checkEditExistingDataSource.Enabled = false;
}
protected override void OnCheckEditExistingDataSourceCheckedChanged(object sender, EventArgs e) {
base.OnCheckEditExistingDataSourceCheckedChanged(sender, e);
TextEditFileName.Enabled = false;
}
}