You can customize the Flash Viewer UI, using javascript functions. This walkthrough illustrates how to customize the look and feel of the Flash Viewer.
The walkthrough is split up into the following activities:
To follow the steps of this walkthrough, you must first complete the steps on creating an ASP.NET Web site and setting up the FlashViewer, described in the Flash Viewer walkthrough.
Declare a variable and attach the FlashViewer by adding the following code onto the .aspx Source view.
Paste the code into the Source view of .aspx inside the <head> and </head> tags |
Copy Code |
---|---|
<script language="javascript" type="text/javascript"> var viewer; function init() { DataDynamics.ActiveReport.Viewer.OnLoad ("WebViewer1", function() { viewer = DataDynamics.ActiveReport.Viewer.Attach("WebViewer1"); }); } </script> |
Replace the <body> tag on the Source view of .aspx |
Copy Code |
---|---|
<body onload="return init()"> |
Drag the Html Input (button) control from the Visual Studio toolbox onto the .aspx design view, containing the WebViewer control.
Double-click the Button control and paste the following code:
Paste the code into the Source view of .aspx inside the <script> and </script> tags |
Copy Code |
---|---|
function Button1_onclick() { var zoom = viewer.getZoom(); alert("Check that zoom property is changed from " + zoom); zoom += 0.1; viewer.setZoom(zoom); alert("to " + zoom); } |
Note: You can declare a variable and attach the FlashViewer in the event handler directly. This would replace the actions in the step 3 above.
|
Available Flash Viewer properties
The properties below use a pair of the getter and setter functions, which names are formed as {get|set}<PropertyName>(). |
Property Name |
Description |
---|---|
CurrentPage |
Integer. Gets or sets the page for a currently selected view. |
HyperLinkBackColor |
String. Gets or sets the background color for all hyperlinks in a document. This value is applied only after a new document is loaded. The format is "#FF0000" (#RRGGBB). |
HyperLinkForeColor | String. Gets or sets the color for all hyperlinks in a document. This value is applied only after a new document is loaded. The format is "#FF0000" (#RRGGBB). |
HyperLinkUnderline |
Boolean. Gets or sets a value determining whether the text of all hyperlinks in a document is underlined. This value is applied only after a new document is loaded. |
SearchResultsBackColor |
String. Gets or sets the background color of the highlighted text when using the Find dialog. The format is "#FF0000" (#RRGGBB). |
SearchResultsForeColor | String. Gets or sets the color of the highlighted text when using the Find dialog. The format is "#FF0000" (#RRGGBB). |
PaperColor | String. Gets or sets the paper color of the report. The format is "#FF0000" (#RRGGBB). |
ShowSplitter |
Boolean. Gets or sets a value determining whether to display a splitter. If set to True, the splitter will be shown. |
TargetView | String. Gets or sets a value that specifies which view - Primary or Secondary, is currently active. If the ShowSplitter property is set to False, then you cannot switch to the Secondary view. |
ThemeUrl | String. Gets or sets a value specifying the relative URL of a skin to use on the Flash Viewer. |
Zoom | Integer. Gets or sets a value that specifies the zoom level at which to display the report. |
TocPanel |
Object. Gets the Table of Contents Panel object. This property is read-only.
|
ViewType | String. Gets or sets the current ViewType value. |
EventsHandler | Object. Gets or sets the events handler container. |
Available Flash Viewer methods
Method Name | Description |
---|---|
LoadDocument(string documentUrl) |
Loads the RDF document. You may use an RDF file that resides on a server, RpxHandler, CompiledReportHandler or custom Http handler implementation to provide a streamed document. This method cancels the current document's loading. |
CancelDocumentLoad() |
Cancels the loading of a current document. |
Print(PrintOptions options) | Causes the Viewer to wait until all required pages are loaded, displayed in the Print dialog and starts printing. The PrintOptions are similar to the WebViewer.PrintOptions, except that the PageRangesCollection methods are merged into the PrintOptions class. |
CreatePrintOptions() |
Creates options for the Print() method. |
setViewType(string viewType, int multiPageRows, int multiPageCols) |
Specifies the view mode. Possible values for the first parameter are specified in the ViewType enumeration. The last two parameters are applied for ViewType.MultiPage only. |
Paste the code into the Source view of .aspx inside the <head> and </head> tags |
Copy Code |
---|---|
<script language="javascript" type="text/javascript"> var viewer; function init() { DataDynamics.ActiveReport.Viewer.OnLoad("WebViewer1", function() { viewer = DataDynamics.ActiveReport.Viewer.Attach("WebViewer1"); viewer.setEventsHandler({ OnLinkClick: function(e) { alert(e.Link); //specifies url of the link item, string return true; }, OnError: function(e) { alert(e.Message); //error message, string alert(e.ErrorType); //possible types are "Error" and "Warning", string return false; } }); }); } </script> |
Replace the <body> tag on the Source view of .aspx |
Copy Code |
---|---|
<body onload="return init()"> |
Note: <EVENTS> are described in detail in the Available events list below. |
Available events
Event | Description | ||||
---|---|---|---|---|---|
OnLinkClick(LinkEventArgs) |
Specifies the URL value of a linked item or a string. This event is raised when a report object with a hyperlink is clicked; this event allows to override the default Hyperlinks behavior that simply opens another browser window. Cancelable. The event handler receives an argument of type LinkEventArgs containing data related to this event. The handler argument has the field "Link". The field "Link" returns the hyperlink URL value. Code example
| ||||
OnError(ErrorEventArgs) |
Fires when an application fires an error or a warning. Use this event to customize FlashViewer error messages and warnings. The event handler receives an argument of type ErrorEventArgs containing data related to this event. The handler argument has the following fields - "ErrorType" and "Message". The field "ErrorType" contains the error type value; the field "Message" contains a description of a Flash Viewer problem. This event allows suppressing any notifications to a user. Code example
| ||||
OnLoadProgress(LoadProgressArgs) |
Raised during the processing of a report. The event handler receives an argument of type LoadProgressArgs containing data related to this event. The handler argument has the following fields - "PageCount", "PageNumber" and "State". The field "PageCount" returns the total count of report pages. The field "PageNumber" returns the page number of the processed report. The field "State" returns the value, indicating the state of the report's processing; the possible values are "Completed", "InProgress" and "Cancelled". Code example
| ||||
OnTargetViewChanging(TargetViewChangeEventArgs) |
Raised while a report's view is changing. The event handler receives an argument of type TargetViewChangedEventArgs containing data related to this event. The handler argument has the following fields - "CurrentView" and "NewView". The field "CurrentView" returns the currently selected view value. The field "NewView" returns the newly selected view value. Code example
| ||||
OnToolClick(ToolClickEventArgs) |
Raised by clicking the toolbar button. Cancelable. The event handler receives an argument of type ToolClickEventArgs containing data related to this event. The handler argument has the following field - "Tool". The field "Tool" returns the name of a clicked button. Code example
| ||||
OnCurrentPageChanged(CurrentPageChangeEventArgs) |
Raised each time a current page is changed within the current view programmatically or by any user navigation command. This event is also raised when the current view (primary or secondary) is changed. The event handler receives an argument of type CurrentPageChangedEventArgs containing data related to this event. The handler argument has the following fields - "PageNumber" and "ViaApi". The field "PageNumber" contains the 1-based page number. The field "ViaApi" specifies whether the event is raised by setting the page number in the CurrentPage property. |
Note: Use the "return true;" value to show that the client side has handled the event. The "return false;" value indicates that the event was not handled. |