Ticket T402442
Visible to All Users

How to show ASPxDashboardDesigner in a XAF application

created 9 years ago

[DevExpress Support Team: CLONED FROM T400712: Web Dashboard Designer - Using XPO datasource for DashboardService]
Hello Maxim,
thank you very much for the provided sample and please excuse myself to bother you again:

Still i got problems adopting your solution to my needs. IMHO the current implementation of this functionality is not quite straightforwarding if not to say confusing. Refering to the attached XAF demo solution and after completing the following steps…

- Create some "DomainObject1" entities
- Create a new "Dashboard Design"

… i face the following problems:

  1. The designer control does not show up the existing entitiy objects.
  2. After opening the dashboard design detailview a second time the dashboard designer control stays invisible (obviously in cause of the js exception 'Uncaught Error: You cannot apply bindings multiple times to the same element.'). Hitting F5 manually does show up the control again.
  3. Creating additional dashboard designs the design control shows up the design of a formerly defined dashboard.

(Please consider that I have to set the underlying object type of the dashboard designer control dynamically because in the end i want to embed such designer functionality for all entities of my application)

Again thanks in advance!

Comments (1)
DevExpress Support Team 9 years ago

    Hello Wolf,

    We need additional time to research these issues. I will get back to you as soon as we have any news.

    Answers approved by DevExpress Support

    created 9 years ago (modified 9 years ago)

    Hello Wolf,

    Thank you for your patience. Here are my comments on the issues you mentioned:

    1) The designer control does not show up the existing entitiy objects.

    To support loading data in the Dashboard designer, the class assigned to the ObjectDataSource.DataSource property should have a static method that returns data. Refer to the code example provided in this article for details. If this approach is not suitable in your case, you can provide data using the DashboardService.DataApi.DataLoading event.

    2) After opening the dashboard design detailview a second time the dashboard designer control stays invisible (obviously in cause of the js exception 'Uncaught Error: You cannot apply bindings multiple times to the same element.'). Hitting F5 manually does show up the control again.

    Our developers have fixed this issue and the fix will be included into the next maintenance update. Refer to the following ticket for details: MVC Dashboard designer throws the "You cannot apply bindings multiple times to the same element" error when it is placed in a callback panel. The hotfix is already available for download in that ticket. Feel free to install it for testing.

    3) Creating additional dashboard designs the design control shows up the design of a formerly defined dashboard.

    To specify which dashboard definition should be loaded in the Dashboard Designer, use the ASPxDashboardDesigner.DashboardId property. It should point to the dashboard definition that exists in the Dashboard Storage. For creating a new dashboard, add an empty dashboard definition with a known identifier to the Dashboard Storage.

    I am afraid we do not have ready examples or guidelines for using the ASP.NET Dashboard Designer in XAF as a property editor, except for the examples already implemented as part of the eXpand Framework modules:
        Dashboard web integration module
        ASP.NET Dashboard Designer - XAF integration
    If you have any questions on the eXpand's implementation, feel free to contact the corresponding support forum: http://www.expandframework.com/support/forum.html
    Should you have any difficulties with the general understanding of how the dashboard components work or on their APIs, please check out the documentation or contact our support team with specific questions.
    PS: Our team will take your requirements into account for the future.

      Comments (1)

        Using DashboardService.DataApi.DataLoading did the job, thanks Uriah!

        Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

        Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.