The dashboard viewer notifies your application about what the user does — loading, exporting and more — through events handled in Angular, backed by this controller.

Initialize the viewer with event routing.
[HttpPost]
public IActionResult InitViewer()
{
    var requestParams = StiAngularViewer.GetRequestParams(this);
    var options = new StiAngularViewerOptions();
    options.Actions.GetReport = "GetReport";
    options.Actions.ViewerEvent = "ViewerEvent";
    options.Appearance.ScrollbarsMode = true;
    return StiAngularViewer.ViewerDataResult(requestParams, options);
}

public IActionResult ViewerEvent()
{
    return StiAngularViewer.ViewerEventResult(this);
}

How it works. Viewer events flow to both the Angular component and this action, so your app can react to user actions on the client, the server, or both.

Hi. Need any help?