[Expand]General Information
[Expand]WinForms Controls
[Collapse]ASP.NET Controls and MVC Extensions
 [Expand]What's Installed
 [Expand]Common Concepts
 [Expand]ASP.NET WebForms Controls
 [Collapse]ASP.NET MVC Extensions
  [Expand]Product Information
  [Expand]Getting Started
  [Collapse]Common Concepts
    Web Application Project Templates
    Insert Extension Wizard
    Data Binding
   [Expand]Applying Themes
    Client-Side API
    Declaring Server-Side Event Handlers
    Using Callbacks
    Passing Values to a Controller Action through Callbacks
    Using Extensions in Razor Views
  [Expand]Grid View
  [Expand]Tree List
  [Expand]Card View
  [Expand]Pivot Grid
   Rich Text Editor
  [Expand]Site Navigation and Layout
  [Expand]HTML Editor
  [Expand]Vertical Grid
  [Expand]Data Editors
  [Expand]Docking and Popups
  [Expand]File Management
  [Expand]Data and Image Navigation
  [Expand]Multi-Use Site Extensions
  [Expand]Spell Checker
  [Expand]Query Builder
 [Expand]Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Passing Values to a Controller Action through Callbacks

When a DevExpress MVC extension works in callback mode and requests the server via its own callback, you can use this callback to pass custom values collected on the client for further server processing. On the server side, you can process these values within a Controller action that is specified by the extension's CallbackRouteValues property. Depending upon the passed values, you can conditionally form the response to be sent back to the client.

By design, a callback (initiated by a DevExpress MVC extension) automatically passes values to the server. These are specific extension-related values, and the values of all internal form elements (e.g., input, textarea, select) rendered inside our extensions. To pass custom values from the client via a callback, you should handle an extension-specific BeginCallback client event. This event's argument provides you with the MVCxClientBeginCallbackEventArgs.customArgs property. This property represents a hash table object that can contain named values. Any named value assigned to the customArgs property is then passed to the server as a request parameter. On the server side, it can be accessed as a parameter of the specified Action. So, the necessary server-side actions can be performed in the handling Action based upon the value(s) passed from the client.



The following table lists DevExpress MVC extensions that expose the BeginCallback client event.

Extension Event
CallbackPanel MVCxClientCallbackPanel.BeginCallback
Chart MVCxClientChart.BeginCallback
ComboBox MVCxClientComboBox.BeginCallback
DataView MVCxClientDataView.BeginCallback
DockPanel MVCxClientDockPanel.BeginCallback
FileManager MVCxClientFileManager.BeginCallback
GridView MVCxClientGridView.BeginCallback
HtmlEditor MVCxClientHtmlEditor.BeginCallback
ListBox MVCxClientListBox.BeginCallback
NavBar MVCxClientNavBar.BeginCallback
PageControl MVCxClientPageControl.BeginCallback
PivotGrid MVCxClientPivotGrid.BeginCallback
PopupControl MVCxClientPopupControl.BeginCallback
RichEdit ASPxClientRichEdit.BeginCallback
Scheduler MVCxClientScheduler.BeginCallback
Spreadsheet MVCxClientSpreadsheet.BeginCallback
TreeList MVCxClientTreeList.BeginCallback
TreeView MVCxClientTreeView.BeginCallback

For an example of how to pass and process client values, refer to the following online demo: Callback Panel - Example.

Expanded See Also

Is this topic helpful?​​​​​​​