Skip to content

EugeniyBurmistrov/dashboard-extension-dashboard-panel

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Dashboard Panel is a Web Dashboard extension that displays a list of available dashboards and lets you switch between the designer and viewer modes.

web-panel

You can see the dashboard panel in action by visiting the DevExpress Web Dashboard Demo.

Installation

  1. Download the latest version of the extension here.

  2. Add the dist/dashboard-panel.css and dist/dashboard-panel.min.js files in your project.

  3. Attach the download script (dashboard-panel.min.js) to the project inside the <head> section onto the page containing Web Dashboard.

<head>
    <script src="/dist/dashboard-panel.min.js"></script>
    <!-- ... -->
</head>
  1. Attach the download style sheet file (dashboard-panel.css) to the project.
<head>
    <link rel="stylesheet" type="text/css" href="/dist/dashboard-panel.css" />
    <!-- ... -->
</head>
  1. Add the /dist/dashboard-panel.html file content inside the <body> section.

  2. Handle the Web Dashboard's BeforeRender event to perform client-side customization of the Web Dashboard control before the control and its elements have been rendered.

<!-- For ASP.NET Web Forms -->
<dx:ASPxDashboard ID="ASPxDashboard1" runat="server" DashboardStorageFolder="~/App_Data/Dashboards">
  <ClientSideEvents BeforeRender="onBeforeRender" />
</dx:ASPxDashboard>
@* For ASP.NET MVC *@
@Html.DevExpress().Dashboard(settings => {
    settings.Name = "Dashboard";
    settings.ClientSideEvents.BeforeRender = "onBeforeRender";
}).GetHtml()
  1. Register the custom item extension to add the Dashboard Panel to the Web Dashboard.
function onBeforeRender(sender) {
  var dashboardControl = sender.GetDashboardControl();
  dashboardControl.registerExtension(new CustomExtensions.CustomDashboardPanelExtension(dashboardControl));
}

API

The DashboardPanelExtension class contains the following public properties:

  • DashboardPanelExtension.allowSwitchToDesigner property - Gets or sets whether you can switch into the designer mode. This property control the visibility of the Edit in Designer button.  
  • DashboardPanelExtension.name property - Gets a unique name of a Web Dashboard extension. The default value is 'dashboard-panel'.
  • DashboardPanelExtension.panelWidth property - Gets or sets the width of the Dashboard Panel extension. The default value is 250 px.
  • DashboardPanelExtension.visible property - Gets or sets whether the Dashboard Panel is visible.

Development

You can use this extension code as a base for your own dashboard item extension development.

Before you start, we advise you to fork this repository and work with your own copy.

  1. Clone this extension to get a local copy of the repository.
git clone https://github.com/DevExpress/dashboard-extension-dashboard-panel.git
cd dashboard-extension-dashboard-panel
  1. In this extension we use the Node.js toolset. Use the command below to install all modules listed as dependencies in the extension's package.json file.
npm install
  1. Then install Gulp to build the solution. You can install it globally...
npm install -g gulp
gulp build

... or use a local Gulp version.

.\node_modules\.bin\gulp build

You can find the resulting files at ...\dashboard-extension-dashboard-panel\dist: dashboard-panel.js and dashboard-panel.min.js.

License

This extension is distributed under the MIT license (free and open-source), but can only be used with a commercial DevExpress Dashboard software product. You can review the license terms or download a free trial version of the Dashboard suite at DevExpress.com.

Support & Feedback

  • Refer to this section for general information about client-side extensions.
  • To learn how to work with extensions, see the following KB article.
  • To address questions regarding the Web Dashboard and JavaScript API, use DevExpress Support Center.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 41.1%
  • CSS 29.7%
  • HTML 22.9%
  • JavaScript 6.3%