DevExpress Data Blog

This blog features all things having to do with data shaping, layout, and presentation!
  • Report Improvements (coming in 13.1)

    We have decided to make usability a point of emphasis when it comes to our great set of tools designed to deal with complex data. As such we have introduced a number of enhancements which should improve the way you interact with our reporting suite.


    When dealing with WinForms reporting there were a number of components one could choose from in order to either view or design reports.

    Old Reporting Toolbox

    We realized that the use case was pretty simple: you want to either add the ability to view a report or edit one. As such we have greatly simplified the way in which this is done by consolidating some of the tools available in the toolbox.

    New Reporting Toolbox

    When dropping a Document Viewer you can then choose to create a standard or ribbon toolbar as well as choose the initial report you would like to load:

    New Report Viewer Component

    Dropping the End User Designer item from the toolbox creates everything you need to get started with editing and designing reports.

    Building Reports

    By the time you are ready to build reports we understand you want to get them out the door as quickly and as easily as possible. Here are a couple of features that will help:

    Cntrl + Select fields then drag to table

    Dragging Fields

    Cntrl + Select fields then drag (right mouse button) to drag labels to a table

    Dragging Headers

    Convert Table to Labels

    Converting to Labels

    We pledge to continue this trend of enabling you to procrastinate (effectively) the task of writing reports.

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • Report Sparklines (coming in 13.1)

    With the debut of our WinForms Sparkline control we’ve decided to also add it to our reporting toolbox.

    Reports Sparkline Design

    Using Sparklines in reports is fairly straightforward. In this case I created the simple Category/Products report from the Northwind Database and added several Sparkline controls to the group header band of the Product detail section. From there it was a simple case of selecting the appropriate data member (which is already available from the report bindings) and value member. From there one can select the appropriate view and customize the colors as well as specific view properties.

    Reports Sparkline Preview

    The end result is both elegant and informative! At a glance we cam compare product price, stock, and orders at a glance. For Beverages it becomes readily apparent that we have a stocking problem with one product and a pricing problem with another.

    I am excited for the kinds of reports this type of control will enable and am looking forward to what you create!

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • WinForms Map Control (coming in 13.1)

    As we near release I thought I would show you another WinForms gem we are adding in 13.1: the WinForms Map Control. When it comes to data analysis the key to understanding is the concise display of many dimensions. A map allows you to convey locality in a truly unparalleled way. This sample represents the top 25 US airports (zoomed into the New York/New Jersey area):

    WinForms Map Control

    Adding a Map to your WinForms project is a simple drag and drop operation. Once the control is on your Form, you can add an Image Layer from either Bing or OpenStreet (the example above is OpenStreet). You can additionally add any number of vector layers from either a file (KML, SHP supported), from a database, or directly in code.

    WinForms Map Control Layers

    For this example I used our soon-to-be-released Spreadsheet API to load a csv file of airport locations directly into the map:

    var layer = (VectorItemsLayer)mapControl1.Layers[1];
    Workbook workbook = new Workbook();
    Worksheet sheet = workbook.Worksheets.ActiveWorksheet;
    for (int i = 1; i <= sheet.Rows.LastUsedIndex; i++)
        string code = sheet[i, 0].DisplayText;
        double lat = sheet[i, 1].Value.NumericValue;
        double lng = sheet[i, 2].Value.NumericValue;
        MapPushpin pushpin = new MapPushpin { Location = new GeoPoint(lat, lng), ToolTipPattern = code };
    mapControl1.ZoomLevel = 4.5;
    mapControl1.CenterPoint = new GeoPoint(37.50, -98.35);

    The code simply loads the csv file and creates pusphins for each airport represented in the data. Since these are only US airports, I zoom in and center the map using the ZoomLevel and CenterPoint properties in the map. Aside from the pushpin, there are a number of other map elements that can be added including Dots, Rectangles, Polygons, Paths, and even a Custom Element:

    WinForms Map Control Map Elements

    We are tremendously excited for the great crop of things coming during our 13.1 series of releases.

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • WinForms Spreadsheet Control (coming in 13.1)

    Whether we like it or not, the spreadsheet has become a de facto analysis tool for small datasets. Its debut in June of 1979 as a software package called VisiCalc predated my own birth by an entire month!


    Since then there have been a number of revisions and consolidations culminating in the widely known software package we all know and love: Microsoft Excel. At DevExpress we recognize the importance spreadsheets and wanted to empower our users to take advantage of the rich facilities this tool provides without the hassle of having to learn a complex API or interact with foreign runtimes. To give you an idea of how easy it is to work with our client agnostic API I wrote a simple console application that generates an entire Excel spreadsheet in about 5 minutes:

    // 1. Creating document
    Workbook book = new Workbook();
    var sheet = book.Worksheets.Add("mysheet");
    // 2. Adding Data
    Random r = new Random(DateTime.Now.Millisecond);
    for (int i = 0; i < 15; i++)
        for (int j = 0; j < 20; j++)
            sheet.Cells[i, j].Value = r.NextDouble() * 100;
            if ((i + j) % 2 == 0)
                sheet.Cells[i, j].Font.Color = Color.Red;
                sheet.Cells[i, j].Font.Color = Color.Blue;
    // 3. Saving Spreadsheet

    UPDATE: Found a better and more correct way of doing the same thing in less lines of code thanks to the development team (updated above).

    As is to be expected, the largest portion of the application deals with generating data. Notice how easy it is to access, edit, and style each individual cell. During our initial usability tests I mentioned to the development team that there were a number of things we should be able to do easily and without much ceremony. I then sat down and tried to implement a couple of things I thought should be easy. Within a matter of minutes I had completed each task without assistance or intervention from the development team.

    One of the tasks that proved to be the easiest was using the SpreadsheetControl inside of a WinForms application. In a couple of clicks you can create a fully functioning spreadsheet application complete with formatting, layout, forumlas, etc.:

    DevExpress Spreadsheet Control

    I am extremely proud of the work that has been done in order to get these great tools to you, our valued customer.

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • Managing Data Views in the Report Server

    The most important part of any report is the data which it displays. Here I will spend a bit of time explaining how data views within the report server are managed, who manages them, and some best practices when considering these issues. Also we will look at some general network considerations to take into account when setting up data views in order to elucidate the “why” behind certain limitations when working in a truly distributed environment.

    Report Server Topology

    Report Server Network TopologyOne of our primary concerns was enabling high throughput (getting as many reports out as possible). As such the report server actually consists of three separate things: the administrative site (IIS), the scheduling mechanism (IIS), and the worker processes. The administrative site and the scheduling process live on the same server. The administrative site is an IIS site where all of the management of users, data views, reports, and report scheduling occur. In addition to the IIS site there is a TaskScheduler service that checks if there are report tasks that need to run. Unlike the administrative site, the TaskScheduler is actually a Service process. When a particular report task needs to run, the TaskScheduler informs the Worker process (also a Service). The Worker process then takes the time to render the report and send the emails to the interested parties.

    The beauty of this setup is that with our report server we have an option where the Worker process can be installed on multiple machines. This can greatly improve the scenario where hundreds of reports need to be generated at the same time every day. The TaskScheduler will route each task to an available Worker thus maximizing the computing resources devoted to generating reports (I will get more into the specifics of setting this type of structure up in later posts).

    Given that the administrative site (and report creation) can be exposed across the web (the administrative site is a web site after all), there are certain limitations that need to be understood. Consider the case where the data that is used in reports is behind a firewall. This database, while accessible to the Report Worker process (since it is behind the firewall as well), will not be accessible to the users accessing the system from outside the firewall. This creates a unique challenge that the Report Server solves with the concept of Data Views.

    Data Views

    Data Views are collections of data shapes available to reports created in the report server. Often I am told that a business has hundreds of reports. Often these boil down into less than 10 actual data shapes. For example, a consulting firm with hundreds of reports may have only two reportable shapes: Client Reports and Project Reports. In other words they have two basic reportable data shapes. One of my most oft given suggestions when engineering a reporting system is to boil down all reports into their basic shapes. My strategy for doing so involves finding the most important database entities (clients and projects) an hoisting these entities as the root of a data shape. While this is inexact science, creating these basic data shapes allows for easy field addition (on the root or sub entities) without having to modify existing reports bound to the same shape.

    Creating Data Views

    Data View Screen

    The first step is to navigate to the data views section and select “Add Data View.” Clicking on this option yields the following screen:

    Data View Form

    In this example I used the Microsoft SQL Server Provider. The reality is you can use any provide which XPO supports. The key is to remember the general report server layout when creating the connection string. This connection string has a Data Source equal to (local). In the context of the network diagram above (local) refers to the actual IIS server. If any of the worker processes lived on a separate machine, this would cause a problem. Consider also the case where Integrated Security is used to access SQL Server rather than an explicit username and password. In this case which user is accessing SQL Server? If the default installation path was chosen this would be none other than the NETWORK SERVICE user:

    App Pool Identity

    Notice that the custom AppPool created in IIS contains the NetworkService Identity. This is also the case for the TaskScheduler and Worker services:

    Services Identity

    It is essential to understand these key principles when creating Data Views.

    Once the Data View form is filled out and the users presses “Add Data View” the user then can create the data shape to be exposed to the report designers:

    Creating Data Shapes

    One can even control the exact fields within tables that are exposed:

    Creating Data Shapes (Fields)

    In this case I selected the Products and Categories table. Once the user clicks “Fill Data View” they are taken back to the Data Views page:

    Added Data View

    Managing Data Views

    The task of managing data views falls specifically to data administrators (although System Administrators also have that right). Once a Data View has been created there are two changes that can be made: edit the connection information and edit the shape. Clicking on the pencil icon will take the user to the Data View Form while clicking on the gear will allow the user to change the data shape.

    Consuming Data Views

    With the data view created, one need only fire up the End User Report Designer to consume the new data shape. There are two options to do this. If you are trying to create a flat table report (i.e. no sub reports) you can select “Databound Report” after adding a new server report:

    Report Wizard

    This will lead the user through a standard reporting wizard designed primarily to create flat data bound reports (i.e. no hierarchy in the data shape). This is an absolutely great wizard for the majority of simple reports. If you need to create a more complex report based on a master-detail hierarchy in the data shape, simply select “Empty Report” and fill the data source manually:

    Add Data Source 

    Clicking “Add New DataSource” invokes a new Wizard which lets you select the Data View

    Select Data View 

    as well as the participating entities:

    Select Tables or Views

    Once the users selects finish they will have access to all of the fields participating in the created data view:

    Report Field List


    That is it! I hope this little tour through Data Views inside of the Report Server has been helpful. The part that trips most people up is awareness of the actual topology of the network wherein the Report Server resides. Once this is clear, everything else flows much easier.

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • Working with Data in Dashboards

    This write-up is next in a series of posts about dashboards. The introductory post can be found here. One of our overriding concerns when creating a new complex product is making it easy to use. One of the fundamental tasks associated with creating dashboards is accessing data.

    Working with a Database

    As previously mentioned, we were very concerned with usability. In other words, we wanted you to be able to access data quickly and easily. Clicking on “New Data Source” gets everything started.

    New Data Source

    This process starts the Data Source wizard.

    Create Data Source

    Connecting to a database is simple and intuitive once a connection has been established.

    Query Designer

    You can pick the series of tables (and respective associations) you would like to make or craft whatever SQL query you wish:


    This process is made painless by the ability to preview any changes or selections made.

    Data Preview

    Once you are satisfied with the results, simply click OK. Once the process is complete, you are ready to start adding dashboard elements and binding fields by dragging from the field list over to the data items section.

    Dashboard Element Data Items

    Working with Objects

    Working with objects is really quite simple.

    Object Binding Code

    In this case, the designer contains the specific dashboard where the data sources are stored. As we will see later, a dashboard can indeed have multiple data sources represented even in the same dashboard. With dashboards, we use a special wrapper class called DataSource which provides all of the ancillary methods needed to manage the disparate data providers available. When binding to objects, we can new up a new DataSource class, give it a name, and pass the object collection as a member of the class. Now all that is left is adding the data source to the dashboard. Literally three lines of code.

    Element Data Items

    The outcome is exactly the same as if we had bound our dashboard to a database.

    Binding to Dashboard Elements

    Although I will go into greater detail later for each element, let me lay the ground work for binding here. Every dashboard element has (mostly) the same binding mechanism.

    Data Items Area

    Each dashboard element has Values, Arguments, and Series. The values would correspond to what is typically considered the Y value in an XY graph. The Arguments would be considered the X value. In this example, the Grade is the argument (or X value) being examined while the value indicates the corresponding number of friends for that grade. The Series area allows for the multiplicity of values across another cross section of data. This particular data also has a Boolean value indicating whether or not a student is tall. If we were to drag that over to the series section, it would produce an extra lines (if a line chart) for each value of Tallness. In this case there would be a line for the friend count based on different grades for those that are tall and another for those that are not.

    Series Binding

    Here you see the line and pie chart with exactly the same bindings. For each dashboard element there are also a number of data shaping tools that will be discussed later

    In Summary

    We have placed a tremendous amount of emphasis (and will continue to do so) on creating an easy path to complex analysis. We are beginning to pay this promise off with our dashboard product and will continue to refine and perfect this path in all of our complex analysis tools (charts, reports, and dashboards).

    In subsequent posts I will spend time on each dashboard element in order to give you a good view of the breadth of functionality available in our dashboards.

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • The DevExpress Report Server

    I am tremendously excited to introduce an entirely new type of product for DevExpress. This has been a culmination of many requests and questions surrounding:

    1. Customizing the End User Designer,
    2. Managing reports in a database,
    3. Scheduling and distributing reports, and finally
    4. Managing report access

    We get many requests for samples and general guidance on how to accomplish these important reporting tasks. The choice was made to simply produce software that covers all of these scenarios. It is engineered from the ground up with your reporting needs in mind. So without further ado, here is the DevExpress Report Server:


    Getting Started

    In an effort to get everyone up and running as quickly as possible, we have authored a number of videos showing you every important aspect of the DevExpress Report Server:

    1. Preparing Your Server – This video will walk you through getting the prerequisites installed on your server in order to get the report server set up.
    2. Installation – This video walks you through installing both the server as well as the report designer.
    3. Managing Users – In this video, we show how to manage report server users and describe how to get the server email capabilities set up properly along with the different account types as well as the notion of standard and pending accounts. Additionally, we delve into the four different roles available in the report server.
    4. Managing Data Views – Here we present how to expose data shapes that will be consumed by those designing reports.
    5. Managing Reports – This is the bread and butter of where the report server shines. Here we show the process of actually creating and designing reports.
    6. Managing Tasks – This video shows how easy it is to create report distribution tasks and shows how to manage internal as well as external distribution lists.

    These resources are designed to describe exactly how to work with the report server as well as exactly what you can do. One of the things that bothers me as a consumer of software products is the lack of transparency when it comes to what software does and and how it is accomplished.

    Licensing and Distribution

    The DevExpress Report Server and End User Designer ships as part of the Universal Subscription and includes a single Server and 5 simultaneous client access licenses (CALs). I have looked around a bit at comparable reporting servers and can honestly say that this is a bargain. This does not even include all of the other software that comes bundled with our Universal Subscription. My sense is that now is the best time to buy as we are eyeing the possibility of making this a separate product with its own server and access costs. This is a completely self contained product and as such cannot be distributed to your clients as part of any software you create. Simply put, a single Universal Subscription will get you a single server license, a report designer license, and 5 concurrent report viewer licenses.

    Server Requirements

    There are 5 requirements needed to run the DevExpress Report Server:

    1. SQL Server – the report server uses SQL server to manage reports, users, tasks, etc.
    2. IIS 7.0+, .NET 4.0, ASP.NET MVC 3 – The report server administration site is run through IIS and is built on MVC 3 and .NET 4.0
    3. HTTP Activation – HTTP Activation is required in order to have the report designer communicate with the report server
    4. Windows Authentication – this is required at initial install since we add the current windows user as the default administrator. By default the report server uses windows authentication (although this can be changed).
    5. SMTP Mail Server – this is used to send report distributions out to those on your distribution lists as well as for user management emails sent when creating new user accounts.

    User Accounts

    There are 4 distinct roles that come with the DevExpress Report Server:

    1. System Administrator – this account has permissions to manage users as well as all other permissions given to the other three roles
    2. Data Administrator – this account has permissions to manage the Data Views available to the report creators as well as all other permissions given to the other two roles
    3. Report Creator – the report creator can create, manage, view, and distribute reports
    4. Report Viewer – the report viewer has permissions to view any report

    The administrative console for managing users is very straightforward:


    Administrators can add new users by simply clicking on “Add Account” and filling in some information. The server takes care of the rest.


    After the administrator clicks “Add Account” the server sends an email to the new user with a custom link requesting they create a new password. The entire process is completely automatic. During the time between the request is sent and the new user creates a new password, the user is placed in a “Pending Account” state where the user is in essence inactive.


    Getting the Bits

    If you would like to try out this brand new product, head on over to our trial page and click on the “Download Universal Trial” button. As soon as you fill in a couple of particulars, you will be met with this:


    During your trial each report you create will have a modest watermark along with a custom footer explaining that the report was creating with demo software.


    Finally is right! We are tremendously excited to be providing this brand new product in your already rich arsenal of DevExpress tools. We are truly at a point where Reporting is a self-service task and no longer fills the plate of your already time crunched and busy schedule.

    In subsequent posts we will be discussing how to provide data shapes to your report creators, managing and creating reports, and scheduling and distributing reports.

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • DevExpress Snap – Reporting Made Simple

    Our recent release here at DevExpress has ushered in a series of new tools that truly make it easier to analyze data. DevExpress Snap is a new style of reporting tool that does just that. A picture is worth a thousand words:

    Drag and Drop Reporting

    All you have to do is select the appropriate fields and literally drop them on the report surface. Given the fields and shape of the data being dropped, we give you a fairly good estimate of how we think the report should be laid out. Above is our first stab with a hierarchical data set. There are also a number of familiar features which I think make this an interesting way of creating reports.


    We have drawn upon years of reporting experience with XtraReports and brought over a number of features you have come to expect in our reporting products. Like XtraReports, you can bind to any number of data sources. Additionally DevExpress Snap has the notions of Parameters and Calculated Fields.

    DevExpress Snap Field List

    An interesting feature not really available in XtraReports is the concept of binding to multiple data sources. The Snap report document has a DataSources collection where you can bind any number of heterogeneous data sources.

     Hybrid Snap Report

    In this example, this report is bound both to the Northwind database and a collection of student objects. In other words, you can bind to completely different kinds of lists and have them live side by side in a report.

    Layout and Style

    When you need pixel perfect reports, my suggestion is to use our award winning banded report design. If you are interested in more of a flow type layout the best choice is DevExpress Snap. Like Microsoft Word, DevExpress Snap has an extremely friendly and familiar methodology for laying out and styling reports.

    Layout Ribbon Menu

    Like Microsoft Word, you can easily add any element to the report from tables to pictures, barcodes to headers, etc. You can even add charts by clicking on the chart button and dragging the appropriate arguments and values right on to the chart.

    Fast Charts

    Styling is also a simple matter of selecting the things you want to format, and selecting the appropriate format choices in the application ribbon.

    Style Ribbon Menu 

    Getting Started

    In an effort to make sure you are successful we have made a number of videos to help you get started:

    1. Basic Setup
    2. Binding to a Database
    3. Binding to Objects
    4. Binding to Multiple Data Sources

    DevExpress Snap is a WinForms control that is included in the WinForms subscription. As with all of our controls this also uses a royalty free distribution model.

    This is truly an exciting release!

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • Building Dashboards with DevExpress

    In my very first post as a DevExpress employee I quoted Rutherford B. Rogers:

    We're drowning in information and starving for knowledge.

    It is indeed the case that our software produces a fair amount of data exhaust. Oftentimes this exhaust languishes in a database or set of files and services without providing value and while producing excess overhead. At DevExpress we are committed to turning your data exhaust into valuable and actionable information that will enable your clients to be more productive and give meaningful insight into the key metrics that drive their business.

    With that, we are excited to introduce a brand new dashboard tool to our already powerful family of data rich components. This tool is intended to help you build and distribute interactive data visualizations with ease.

    Dashboard Designer



    One of goals with this product is enabling you to access your data in a quick and intuitive way. If your particular application needs to access a database, we have you covered with 14 different engines, xml file binding, as well as POCO support.

    The process of selecting data, therefore, is tailored to your specific needs. As mentioned earlier you can (in order of customizability):

    1. Select tables or views,
    2. Craft a specific query, or
    3. Simply bind to an IEnumerable of your custom generated objects

    This level of customization allows for an infinite range of data options suited to your personal needs.

    Dashboard Elements

    The difficulty of understanding large amounts of data is made much easier with powerful and principled visualizations. Our new dashboard tool has 7 different data visualization elements each with different strengths and options.

    Dashboard Elements

    Pivot The pivot dashboard element enables a cross-sectional view of data pivoted across multiple dimensions.
    Grid The grid enables a standard tabular representation of data. This dashboard element also contains embedded visual cues and displays that assist in quickly understanding data.
    Chart This quintessential visualization tool assists in the creation of bar, point, line, area, range, bubble, and financial charts. Our creation mechanism has also been significantly streamlined in order to visualize your data with simple drop actions.
    Pie The pie chart is a powerful visualization tool that enables users to understand distributions over small ranges.
    Gauges Gauges allow the comparative visualization of two values where one represents a target and the other an actual value. This dashboard element also allows for a multiplicity of gauges in a single dashboard element by creating a series view of the same.
    Card Cards, similar to gauges, are a textual visualization of target to actual values. These additionally include easy to understand positive/negative visualizations as well as easy to consume data explanations. This is a brand new visualization in the DevExpress family of visualization tools!
    Range Filter The range filter is also a brand new visualization tool that allows for automatic data filtering by presenting a chart based range. The range filter is automatically wired up to be a master filter and enables users to drill down into specific data in an effortless way.

    In addition to these data visualization elements, we have also included a static image and text dashboard element allowing finer grained dashboard customization. This will enable the addition of custom images and text that can spruce up the presentation of a dashboard.

    Working with a Dashboard Element

    Once a data connection is established, all you need to do to add a dashboard element is click on the corresponding type you wish to create. Once that is done all you need to do from there is start dropping fields into the Data Items section.

    Dashboard Element Data Items

    Dashboard Element Data

    For every dashboard element there are three things to consider:

    1. What data is represented?
    2. How the data is shaped?
    3. How should the user interact with the data?

    Each dashboard element’s data bindings can be dragged from the available fields from the data source.

    Dashboard Fields

    The three areas where these can be dragged are the:

    1. Values – the Y axis in the case of a chart (or the values of the items being measured)
    2. Arguments – this can be considered as the X axis (or the items being measured)
    3. Series – different sets of (x, y) pairs

    Additionally one can drag fields directly into the Hidden Data Items Section. This section can be used to do additional sorting, filtering, and data shaping on values and arguments that are not necessarily visible in the actual dashboard element. Users of your dashboards will be able to shape data as they see fit – even with data elements not present in the visualization.

    Dashboard Element Layout

    Each dashboard element also has item specific layout capabilities. A couple of examples:

    Chart Chart Element Layout Options
    Grid Grid Element Layout Options
    Cards Card Element Layout Options

    These layout options are element specific and allow for a tremendous amount of flexibility.


    Next I want to tell you about how easy it is to create interactive dashboards. Every dashboard element visualization intrinsically is linked to a specific set of data. Because of this data connection, we are able to provide concise and pain-free methods of creating both dashboard wide filtering as well as simple element drill down. Each dashboard element has a data tab:

    Dashboard Element Interactivity Options

    The data tab allows you to define either a dashboard wide filter, drill down, as well as the ability to define whether or not a dashboard element even participates in a filter. There is no code, variables, or anything for that matter needed to define these complex yet informative actions.


    The main output when designing a dashboard is the dashboard definition file. This file is a simple xml file which defines where the data comes from, what dashboard elements are defined, how they are bound, and what interactions have been created. This simple dashboard definition file can then be used in the WinForms dashboard viewer control. The final product looks very similar to the designer:

    WinForms Dashboard Viewer

    This viewer is fully interactive and will assist your users to get a really good feel for your data. Another exciting viewer we have created is our web viewer:

    Web Dashboard Viewer

    The web viewer uses our new HTML5/JS visualization tools available in DXTREME making them accessible to virtually any iDevice (above is an example with the iPad), Android, or Windows device. This viewer (just like the WinForms viewer) is simply dragged on to the design surface and bound to the dashboard definition file:

    Web Dashboard Viewer at Design Time

    It is that simple!


    There is so much more to talk about! I am personally very excited about this new product. As mentioned, my very first official post as a DevExpress employee outlined the importance I’ve always attached to gleaning knowledge from your data. I plan to dive into each aspect a bit more carefully in posts and videos to come.

    There is much yet to come! Stay Tuned!

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

  • DevExpress XAF Training in Germany

    Häckers Kurhotel

    One of the true unsung treasures DevExpress has developed is called XAF – Express Application Framework. I only recently became aware of the sheer power this framework while experimenting in a File->New Project type scenario. I was able to get  a full web and windows application done in a few minutes by appealing to its architectural strengths as well as its design-time flexibility. As soon as I got something to work, however, I realized that I had barely grazed the tip of the iceberg. The module based approach in XAF allows for an unlimited combination of added functionality.

    As I started diving into the extensive1 documentation2 I realized that some hands on help would be in order. I started working with some of the developers of the system and saw my understanding increase exponentially.

    One of those experts is, of course, Oliver Sturm! He is putting on a full 5 day class on XAF in Bad Ems, Germany. It is a beautiful little town about an hour outside of Frankfurt. I was there earlier this year and was impressed at what a lovely place it was! The class runs from November 19-23. More details can be found here.

    I am seriously jealous! I am hoping I can attend simply because I want to learn more about this tremendous framework.

    Expert DevExpress XAF
    November 19-23 (5 days)
    Häckers Kurhotel, Bad Ems, Germany
    To sign up for this class, please send an email with your details. Their representative John Martin will get back to you as soon as possible!

    As always, if there are any comments and/or questions, feel free to get a hold of me!

    Seth Juarez
    Twitter: @SethJuarez

    Want The Best Reporting Tool Ever?

    Get The No-Compromise Reporting Tool for WinForms, ASP.NET, Silverlight and WPF! - Native integration with DevExpress WinForms and ASP.NET Controls, unequalled design-time productivity, industrial-grade features. Try a fully-functional version of DXperience for free now:

    Let us know what you think of our Reporting Suite by rating it in the VS Gallery!

    Follow SethJuarez on Twitter

« Previous page   Next page »

Chat is one of the many ways you can contact members of the DevExpress Team.
We are available Monday-Friday between 7:30am and 4:30pm Pacific Time.

If you need additional product information, write to us at or call us at +1 (818) 844-3383


DevExpress engineers feature-complete Presentation Controls, IDE Productivity Tools, Business Application Frameworks, and Reporting Systems for Visual Studio, along with high-performance HTML JS Mobile Frameworks for developers targeting iOS, Android and Windows Phone. Whether using WPF, Silverlight, ASP.NET, WinForms, HTML5 or Windows 8, DevExpress tools help you build and deliver your best in the shortest time possible.

Copyright © 1998-2014 Developer Express Inc.
All trademarks or registered trademarks are property of their respective owners