Interface IReportViewerBuilder
Represents a builder that provides a fluent API for configuring and initializing the MVC Report Viewer. Used to set up all aspects of the report viewer including report sources, display options, authentication, and client-side behavior.
Namespace: Telerik.ReportViewer.Mvc
Assembly: Telerik.ReportViewer.Mvc.dll
Syntax
public interface IReportViewerBuilder
Remarks
All configuration methods return the builder instance to enable fluent method chaining for comprehensive viewer setup.
Methods
AccessibilityKeyMap(AccessibilityKeyMap)
Sets the key mappings used in accessibility mode for keyboard navigation.
Declaration
IReportViewerBuilder AccessibilityKeyMap(AccessibilityKeyMap keyMap)
Parameters
|
AccessibilityKeyMap
keyMap
The AccessibilityKeyMap configuration object defining keyboard shortcuts and navigation keys. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Customizes keyboard shortcuts for accessibility navigation to meet specific application or user requirements.
AuthenticationToken(String)
Sets the encoded authentication token used to authenticate requests to the reporting service.
Declaration
IReportViewerBuilder AuthenticationToken(string token)
Parameters
|
System.String
token
The encoded authentication token string for secure communication with the reporting service. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Used for secured reporting services that require authentication tokens for request authorization.
CheckedButtonClass(String)
Sets the CSS class to be applied to buttons when they are in checked state.
Declaration
IReportViewerBuilder CheckedButtonClass(string checkedButtonClass)
Parameters
|
System.String
checkedButtonClass
The CSS class name for styling checked/pressed buttons in the viewer interface. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Allows customization of checked button appearance to match application styling requirements.
ClientEvents(Action<IClientEventsBuilder>)
Provides a fluent way to configure the client-side event handlers of the report viewer.
Declaration
IReportViewerBuilder ClientEvents(Action<IClientEventsBuilder> clientEventsBuilder)
Parameters
|
System.Action<IClientEventsBuilder>
clientEventsBuilder
An action delegate that receives an IClientEventsBuilder for configuring event handlers. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Enables attachment of JavaScript functions to handle various viewer events such as rendering, printing, and user interactions.
Deferred()
Defers the JavaScript initialization statement for the report viewer.
Declaration
IReportViewerBuilder Deferred()
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Allows manual control over when the viewer initialization script is executed for custom loading scenarios.
DirectPrint(Boolean)
Sets whether the viewer should use the browser's Adobe PDF plug-in for the print action.
Declaration
[Obsolete("Telerik.ReportViewer.Mvc.IReportViewerBuilder.DirectPrint(bool) is now obsolete. Please use Telerik.ReportViewer.Mvc.IReportViewerBuilder.PrintMode(Telerik.ReportViewer.Mvc.PrintMode) overload instead.")]
IReportViewerBuilder DirectPrint(bool directPrint)
Parameters
|
System.Boolean
directPrint
True to enable direct PDF plugin printing, false to use alternative print methods. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
DisabledButtonClass(String)
Sets the CSS class to be applied to buttons when they are in disabled state.
Declaration
IReportViewerBuilder DisabledButtonClass(string disabledButtonClass)
Parameters
|
System.String
disabledButtonClass
The CSS class name for styling disabled buttons in the viewer interface. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Allows customization of disabled button appearance to match application styling requirements.
DocumentMapAreaPosition(DocumentMapAreaPosition)
Specifies where the Document Map Area should be displayed. Right - Displays Document Map Area on the right of the page view. Left - Displays Document Map Area on the left of the page view.
Declaration
IReportViewerBuilder DocumentMapAreaPosition(DocumentMapAreaPosition documentMapAreaPosition)
Parameters
|
DocumentMapAreaPosition
documentMapAreaPosition
The DocumentMapAreaPosition enumeration value specifying the position: Right or Left relative to the page view. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Controls the placement of the document map navigation panel for report bookmark and section navigation.
DocumentMapVisible(Boolean)
Sets the initial visibility state of the viewer's document map.
Declaration
IReportViewerBuilder DocumentMapVisible(bool visible)
Parameters
|
System.Boolean
visible
True to show the document map by default, false to hide it initially. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Controls whether the document map navigation panel is visible when the viewer first loads. The document map is shown only if the report contains bookmarks. The document map works both in the interactive and print preview view modes.
EnableAccessibility(Boolean)
Enables or disables the accessibility features of the report viewer and its contents.
Declaration
IReportViewerBuilder EnableAccessibility(bool enable)
Parameters
|
System.Boolean
enable
True to enable accessibility features for screen readers and keyboard navigation, false to disable them. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Accessibility features include ARIA attributes, keyboard navigation support, and screen reader compatibility.
Id(String)
Sets the unique identifier for the MVC Report Viewer HTML element that will be used by the initialization script to locate and initialize the viewer.
Declaration
IReportViewerBuilder Id(string id)
Parameters
|
System.String
id
The unique HTML element identifier string that will be assigned to the report viewer container. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
This identifier is required for proper viewer initialization and must be unique within the page HTML structure.
InitialPageAreaImageUrl(String)
Sets the background image URL for the PageArea when parameter values are missing or invalid.
Declaration
IReportViewerBuilder InitialPageAreaImageUrl(string initialPageAreaImageUrl)
Parameters
|
System.String
initialPageAreaImageUrl
The URL of the background image to display in the page area during initial state or parameter validation errors. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Provides visual feedback to users when the report cannot be displayed due to missing or invalid parameters.
KeepClientAlive(Boolean)
Sets whether the client session will be kept alive by sending periodic requests to prevent session timeout.
Declaration
IReportViewerBuilder KeepClientAlive(bool keepClientAlive)
Parameters
|
System.Boolean
keepClientAlive
True to send keep-alive requests based on ClientSessionTimeout configuration, false to allow natural session expiration. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Prevents client session expiration during extended report viewing sessions by maintaining server communication.
PageMode(PageMode)
Specifies whether the viewer is in Continuous scroll or Single page mode. SinglePage - Displays only one report page in PageArea container ContinuousScroll - Displays large amount of report pages by appending additional pages on demand.
Declaration
IReportViewerBuilder PageMode(PageMode pageMode)
Parameters
|
PageMode
pageMode
The PageMode enumeration value: SinglePage for one page display, or ContinuousScroll for multiple pages with on-demand loading. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
SinglePage shows only one report page at a time, while ContinuousScroll enables scrolling through multiple pages with progressive loading.
ParameterEditors(Action<IParameterEditorsBuilder>)
Provides a fluent way to configure custom parameter editors for the report viewer.
Declaration
IReportViewerBuilder ParameterEditors(Action<IParameterEditorsBuilder> parameterEditorsBuilder)
Parameters
|
System.Action<IParameterEditorsBuilder>
parameterEditorsBuilder
An action delegate that receives an IParameterEditorsBuilder for configuring custom parameter input controls. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Enables replacement of default parameter input controls with custom JavaScript-based editors for enhanced user experience.
Parameters(Parameters)
Configures the report parameters display and interaction options.
Declaration
IReportViewerBuilder Parameters(Parameters parametersOptions)
Parameters
|
Parameters
parametersOptions
The Parameters configuration object that defines parameter area behavior and appearance. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Controls how report parameters are displayed and managed within the viewer interface.
ParametersAreaPosition(ParametersAreaPosition)
Specifies where the Parameters Area should be displayed. Right - Displays Parameters Area on the right of the page view. Left - Displays Parameters Area on the left of the page view. Top - Displays Parameters Area on the top of the page view. Bottom - Displays Parameters Area on the bottom of the page view.
Declaration
IReportViewerBuilder ParametersAreaPosition(ParametersAreaPosition parametersAreaPosition)
Parameters
|
ParametersAreaPosition
parametersAreaPosition
The ParametersAreaPosition enumeration value specifying the position: Right, Left, Top, or Bottom relative to the page view. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Controls the placement of the parameters panel for optimal user experience and interface layout.
ParametersAreaVisible(Boolean)
Sets the initial visibility state of the viewer's parameters area.
Declaration
IReportViewerBuilder ParametersAreaVisible(bool visible)
Parameters
|
System.Boolean
visible
True to show the parameters area by default, false to hide it initially. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Controls whether the parameters panel is visible when the viewer first loads, regardless of parameter presence.
PersistSession(Boolean)
Sets whether the viewer's client session should be persisted between page refreshes using browser sessionStorage.
Declaration
IReportViewerBuilder PersistSession(bool persistSession)
Parameters
|
System.Boolean
persistSession
True to enable session persistence across page refreshes, false to use default session behavior. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Session persistence maintains viewer state during postbacks and page refreshes for improved user experience.
PrintMode(PrintMode)
Sets the print mode of the viewer. Three modes exist currently: AutoSelect - Specifies that the viewer should automatically determine how to print: through the browser's PDF plug-in or through export to a PDF file. ForcePDFPlugin - Specifies that the viewer should always use the PDF plugin regardless of the browser's version and settings. ForcePDFFile - Specifies that the viewer should always export the report document to PDF format with the 'print' script enabled.
Declaration
IReportViewerBuilder PrintMode(PrintMode printMode)
Parameters
|
PrintMode
printMode
The PrintMode enumeration value: AutoSelect for automatic method selection, ForcePDFPlugin for PDF plugin usage, or ForcePDFFile for PDF file export with print script. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Controls the printing mechanism based on browser capabilities and user requirements for optimal print experience.
ReportResolver(IReportResolver)
Sets the chain of report resolvers for custom report loading logic.
Declaration
[Obsolete]
IReportViewerBuilder ReportResolver(IReportResolver resolver)
Parameters
|
IReportResolver
resolver
The IReportResolver implementation for custom report resolution. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
ReportServer(ReportServer)
Sets the connection data for the Telerik Report Server that hosts the reports.
Declaration
IReportViewerBuilder ReportServer(ReportServer reportServer)
Parameters
|
ReportServer
reportServer
The ReportServer configuration object containing connection and authentication information for Report Server integration. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Used when the viewer is connected to a Telerik Report Server instance (takes precedence over the ServiceUrl property) Connecting to Telerik Report Server for .NET is not supported.
ReportSource(String)
Sets the report source as a string identifier for the report displayed in the viewer.
Declaration
IReportViewerBuilder ReportSource(string report)
Parameters
|
System.String
report
The string identifier or path that uniquely identifies the report to be loaded. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Simplified method for specifying reports using string-based identification without additional configuration.
ReportSource(String, IDictionary<String, Object>)
Sets the report source as a string identifier and provides parameter values for the report displayed in the viewer.
Declaration
IReportViewerBuilder ReportSource(string report, IDictionary<string, object> parameters)
Parameters
|
System.String
report
The string identifier or path that uniquely identifies the report to be loaded. |
|
System.Collections.Generic.IDictionary<System.String, System.Object>
parameters
The System.Collections.Generic.IDictionary<TKey, TValue> containing parameter name-value pairs for report initialization. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Combines report identification with parameter initialization for streamlined report setup with predefined values.
ReportSource(ReportSource)
Sets the ReportSource for the report displayed in the viewer.
Declaration
[Obsolete]
IReportViewerBuilder ReportSource(ReportSource reportSource)
Parameters
|
ReportSource
reportSource
The report source configuration object. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
ReportSource(TypeReportSource)
Sets the report source as a TypeReportSource for the report displayed in the viewer.
Declaration
IReportViewerBuilder ReportSource(TypeReportSource typeReportSource)
Parameters
|
TypeReportSource
typeReportSource
The TypeReportSource configuration that references a report class type for strongly-typed report loading. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Used for reports that are implemented as .NET classes and referenced by their type information.
ReportSource(UriReportSource)
Sets the report source as a UriReportSource for the report displayed in the viewer.
Declaration
IReportViewerBuilder ReportSource(UriReportSource uriReportSource)
Parameters
|
UriReportSource
uriReportSource
The UriReportSource configuration that references a report file by its URI location. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Used for reports stored as files that are referenced by their file system or web URI location.
Scale(Double)
Sets the zoom scale factor for the report display when using Specific scale mode.
Declaration
IReportViewerBuilder Scale(double scale)
Parameters
|
System.Double
scale
The scale factor as a decimal value where 1.0 equals 100% (original size), values greater than 1.0 zoom in, and values less than 1.0 zoom out. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Only effective when ScaleMode is set to Specific, allowing precise control over report magnification.
ScaleMode(ScaleMode)
Sets the scale mode of the viewer. Three modes exist currently: FitPage - The whole report will fit on the page (will zoom in or out), regardless of its width and height. FitPageWidth - The report will be zoomed in or out so that the width of the screen and the width of the report match. Specific - Uses the scale to zoom in and out the report.
Declaration
IReportViewerBuilder ScaleMode(ScaleMode scaleMode)
Parameters
|
ScaleMode
scaleMode
The ScaleMode enumeration value: FitPage for full page fitting, FitPageWidth for width-based fitting, or Specific for custom scale values. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Determines how the report is sized within the viewer area to optimize readability and user experience.
ScaleMode(ScaleModes)
Sets the scale mode of the viewer. Three modes exist currently: FIT_PAGE - The whole report will fit on the page (will zoom in or out), regardless of its width and height. FIT_PAGE_WIDTH - The report will be zoomed in or out so that the width of the screen and the width of the report match. SPECIFIC - Uses the scale to zoom in and out the report.
Declaration
[Obsolete("Telerik.ReportViewer.Mvc.IReportViewerBuilder.ScaleMode(Telerik.ReportViewer.Mvc.ScaleModes) is now obsolete. Please use Telerik.ReportViewer.Mvc.IReportViewerBuilder.ScaleMode(Telerik.ReportViewer.Mvc.ScaleMode) overload instead.")]
IReportViewerBuilder ScaleMode(ScaleModes scaleMode)
Parameters
|
ScaleModes
scaleMode
The ScaleModes enumeration value for sizing behavior. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
SearchMetadataOnDemand(Boolean)
Determines whether the search metadata will be delivered on demand or generated by default during report rendering.
Declaration
IReportViewerBuilder SearchMetadataOnDemand(bool enable)
Parameters
|
System.Boolean
enable
True to generate search metadata on demand only when needed, false to generate it during initial report rendering. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Enabling search will notify the report engine to produce search metadata while rendering the report. This metadata is used by the report viewer in search dialog and in the report viewer area for highlighting the found and selected items. Default value: false
SendEmail(SendEmail)
Configures the send email functionality options for the report viewer.
Declaration
IReportViewerBuilder SendEmail(SendEmail sendEmailOptions)
Parameters
|
SendEmail
sendEmailOptions
The SendEmail configuration object that defines email sending capabilities and settings. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Enables users to email reports directly from the viewer interface with customizable email settings.
ServiceUrl(String)
Sets the URL of the Telerik Reporting REST service that will provide the report viewer with reports and handle processing operations.
Declaration
IReportViewerBuilder ServiceUrl(string serviceUrl)
Parameters
|
System.String
serviceUrl
The complete URL of the properly configured Telerik Reporting REST service endpoint. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
The service must be properly configured for successful communication between the viewer and server.
TemplateUrl(String)
Sets the URL for the custom report viewer template that defines the viewer's UI structure and appearance.
Declaration
IReportViewerBuilder TemplateUrl(string templateUrl)
Parameters
|
System.String
templateUrl
The URL path to the custom HTML template file for viewer UI customization. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
Allows customization of the viewer interface by providing a custom template with modified functionality or styling.
ViewMode(ViewMode)
Specifies whether the viewer is in interactive or print preview mode. PrintPreview - Displays the paginated report as if it is printed on paper. Interactivity is not enabled. Interactive - Displays the report in its original width and height with no paging. Additionally interactivity is enabled.
Declaration
IReportViewerBuilder ViewMode(ViewMode viewMode)
Parameters
|
ViewMode
viewMode
The ViewMode enumeration value: PrintPreview for paginated print layout, or Interactive for original dimensions with enabled interactivity. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |
Remarks
PrintPreview displays paginated reports as they would appear when printed, while Interactive enables full report interactivity.
ViewMode(ViewModes)
Specifies whether the viewer is in interactive or print preview mode. PRINT_PREVIEW - Displays the paginated report as if it is printed on paper. Interactivity is not enabled. INTERACTIVE - Displays the report in its original width and height with no paging. Additionally interactivity is enabled.
Declaration
[Obsolete("Telerik.ReportViewer.Mvc.IReportViewerBuilder.ViewMode(Telerik.ReportViewer.Mvc.ViewModes) is now obsolete. Please use Telerik.ReportViewer.Mvc.IReportViewerBuilder.ViewMode(Telerik.ReportViewer.Mvc.ViewMode) overload instead.")]
IReportViewerBuilder ViewMode(ViewModes viewMode)
Parameters
|
ViewModes
viewMode
The ViewModes enumeration value specifying the display mode. |
Returns
|
IReportViewerBuilder
The current IReportViewerBuilder instance for method chaining. |