Skip to main content

DashboardDesigner.ConfigureDataConnection Event

Allows you to customize connection settings before the DashboardDesigner connects to a data store (database, OLAP cube, etc.).

Namespace: DevExpress.DashboardWin

Assembly: DevExpress.Dashboard.v24.1.Win.dll

NuGet Package: DevExpress.Win.Dashboard

Declaration

public event DashboardConfigureDataConnectionEventHandler ConfigureDataConnection

Event Data

The ConfigureDataConnection event's data class is DashboardConfigureDataConnectionEventArgs. The following properties provide information specific to this event:

Property Description
ConnectionName Gets the name of the connection for which the event has been raised. Inherited from ConfigureDataConnectionEventArgs.
ConnectionParameters Gets or sets parameters used to establish a connection to data. Inherited from ConfigureDataConnectionEventArgs.
DataSourceName Gets the data source name for which the event was raised.

Remarks

The ConfigureDataConnection event occurs before connecting to a data source and allows you to customize connection settings.

This event is raised when the dashboard is supplied with data using one of the following data source types:

If the dashboard is bound to the DashboardObjectDataSource, the DashboardDesigner.DataLoading event fires instead.

To specify connection parameters, cast an object the e.ConnectionParameters property returns to the DataConnectionParametersBase descendant. The following table lists the different data sources and their corresponding descendants:

Data Source

Parameter Type

SQL Data Source

The SqlServerConnectionParametersBase class is the base type and defines the basic connection parameters: DatabaseName, Password, ServerName and UserName.

To specify other data provider parameters, cast an object to any of the types listed in the DevExpress.DataAccess.ConnectionParameters namespace. Here are some of the types:

You can also add a custom connection string. Cast an object to the CustomStringConnectionParameters class and assign a custom connection string to the ConnectionString property.

Tip

You can use a custom connection string to get data from an XML file that contains valid schema, for example, “xpoprovider=InMemoryDataStore;data source=””your_data_file.xml””;read only=True”

OLAP Data Source

Cast an object to the OlapConnectionParameters type and use the ConnectionString property.

Excel Data Source

Cast an object to the ExcelDataSourceConnectionParameters type and use the FileName and Password properties.

Extract Data Source

Cast an object to the ExtractDataSourceConnectionParameters type and use the FileName and DriverName properties.

Entity Framework Data Source

Event does not occur.

Object Data Source

Event does not occur.

Handle the DataLoading/AsyncDataLoading event instead:

JSON Data Source

Cast an object to the JsonSourceConnectionParameters type and use the JsonSource property.

You can also add a custom connection string. Cast an object to the CustomStringConnectionParameters class and assign a custom connection string to the ConnectionString property.

MongoDB Data Source

Cast an object to the MongoDBCustomConnectionParameters type and use the following connection parameters:

Tip

Refer to the following topic for information about custom connection strings: Custom Connection Strings for Data Sources

Examples

How to: Handle the ConfigureDataConnection Event for Various Data Source Types

The following code snippet shows how to handle the ConfigureDataConnection event for various data source types:

using DevExpress.DashboardCommon;
using DevExpress.DataAccess.ConnectionParameters;
// ...
dashboardDesigner.ConfigureDataConnection += dashboardDesigner_ConfigureDataConnection;
// ...
private void dashboardDesigner_ConfigureDataConnection(object sender, DashboardConfigureDataConnectionEventArgs e){
    if (e.DataSourceName == "sqliteDataSource"){
        SQLiteConnectionParameters parameters = e.ConnectionParameters as SQLiteConnectionParameters;
        if (parameters != null){
            parameters.FileName = "file:Data\nwind.db";
            parameters.Password = "test";
        }
    }
    if (e.DataSourceName == "olapDataSource"){
        OlapConnectionParameters parameters = e.ConnectionParameters as OlapConnectionParameters;
        if (parameters != null){
            parameters.ConnectionString = "Provider=MSOLAP;Data Source=http://demos.devexpress.com/Services/OLAP/msmdpump.dll;"
                + "Initial catalog=Adventure Works DW Standard Edition;Cube name=Adventure Works;Query Timeout=100;";
        }
    }
    if (e.DataSourceName == "extractDataSource"){
        ExtractDataSourceConnectionParameters parameters = e.ConnectionParameters as ExtractDataSourceConnectionParameters;{
            if (parameters != null){
                parameters.FileName = "file:Data\nwind.dat";
            }
        }
    }
    if (e.DataSourceName == "oracleDataSource"){
        OracleConnectionParameters parameters = e.ConnectionParameters as OracleConnectionParameters;
        if (parameters != null){
            parameters.ProviderType = OracleProviderType.ODPManaged;
            parameters.ServerName = "dashboarddb:1521/OracleTest";
            parameters.UserName = "user";
            parameters.Password = "test";
        }
    }

    if (e.DataSourceName == "excelDataSource"){
        ExcelDataSourceConnectionParameters parameters = e.ConnectionParameters as ExcelDataSourceConnectionParameters;
        if (parameters != null){
            parameters.FileName = "file:Data\nwind.xlsx";
            parameters.Password = "test";
        }
    }              
}

How to: Specify the Extract Data Source’s File Location Before the Dashboard Loads

This code snippet is the ConfigureDataConnection event handler that allows you to specify the extract data source’s file location before the dashboard loads.

View Example: How to set master filter in DashboardViewer

using DevExpress.DashboardCommon;
// ...
dashboardDesigner.ConfigureDataConnection += dashboardDesigner_ConfigureDataConnection;
// ...
private void dashboardDesigner_ConfigureDataConnection(object sender, DashboardConfigureDataConnectionEventArgs e)
{
    ExtractDataSourceConnectionParameters parameters = e.ConnectionParameters as ExtractDataSourceConnectionParameters;
    if (parameters != null)
        parameters.FileName = Path.GetFileName(parameters.FileName);
}

The following code snippets (auto-collected from DevExpress Examples) contain references to the ConfigureDataConnection event.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also