The requested page is not available for the requested platform. You are viewing the content for Default platform.

ASPxClientCardView.BatchEditEndEditing Event

Occurs when a grid leaves batch edit mode.


BatchEditEndEditing: ASPxClientEvent<ASPxClientCardViewBatchEditEndEditingEventHandler<ASPxClientCardView>>

Event Data

The BatchEditEndEditing event handler receives an argument of the ASPxClientCardViewBatchEditEndEditingEventArgs type. The following properties provide information specific to this event.

Property Description
cancel Gets or sets a value indicating whether the action which raised the event should be canceled.
(Inherited from ASPxClientCancelEventArgs)
cardValues Gets a hashtable that maintains information about editable cells.
visibleIndex Gets the visible index of the card whose cells have been edited.


The BatchEditEndEditing event is raised when the grid leaves edit mode (for a cell/card) due to an end-user interaction or programmatic call to the ASPxClientCardViewBatchEditApi.EndEdit method. The event provides arguments that allow you to leave a particular cell in the edit mode.

An argument object provided by the events contains the ASPxClientCardViewBatchEditEndEditingEventArgs.cardValues structure. This is a hashtable that maintains information about editable cells in the following manner:

cardValues = {
   "0": {
      value: "someValue",
      text: "someDisplayText"
//Here, "0" is an example of the column index specifying the corresponding card cell

You can manipulate entries of this hashtable to initialize/modify editor values or prevent displaying editors for particular cells by removing the corresponding entries from ASPxClientCardViewBatchEditEndEditingEventArgs.cardValues.

Note that if the CardViewBatchEditSettings.EditMode property is set to Cell, the ASPxClientCardViewBatchEditEndEditingEventArgs.cardValues hashtable contains all values of an edited card, but only the value of an edited cell is used to update the card. The edited cell is specified by the ASPxClientCardViewBatchEditStartEditingEventArgs.focusedColumn property passed to the ASPxClientCardView.BatchEditStartEditing event.


This example demonstrates how to create an unbound column that calculates the sum of other columns and changes its values on the fly when an end-user changes any grid values using the Batch edit mode.

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register assembly="DevExpress.Web.v15.2, Version=, Culture=neutral, PublicKeyToken=b88d1754d700e49a" namespace="DevExpress.Web" tagprefix="dx" %>

<!DOCTYPE html>

<html xmlns="">
<head runat="server">
    <script type="text/javascript">
        function OnBatchEditEndEditing(s, e) {
            window.setTimeout(function () {
                var price = s.batchEditApi.GetCellValue(e.visibleIndex, "Price");
                var quantity = s.batchEditApi.GetCellValue(e.visibleIndex, "Quantity");
                s.batchEditApi.SetCellValue(e.visibleIndex, "Sum", price * quantity);
            }, 10);
    <form id="form1" runat="server">

        <dx:ASPxCardView ID="Grid" runat="server" KeyFieldName="ID" OnBatchUpdate="ASPxCardView1_BatchUpdate" 
            OnCardInserting="ASPxCardView1_CardInserting" OnCardUpdating="ASPxCardView1_CardUpdating" OnCardDeleting="ASPxCardView1_CardDeleting"             
            OnCustomUnboundColumnData="ASPxCardView1_CustomUnboundColumnData" AutoGenerateColumns="False">
            <ClientSideEvents BatchEditEndEditing="OnBatchEditEndEditing" />
            <SettingsEditing Mode="Batch">
                <dx:CardViewSpinEditColumn FieldName="Quantity" VisibleIndex="0">
                    <PropertiesSpinEdit DisplayFormatString="g">
                <dx:CardViewSpinEditColumn FieldName="Price" VisibleIndex="1">
                    <PropertiesSpinEdit DisplayFormatString="g">
                <dx:CardViewTextColumn FieldName="Sum" ReadOnly="True" UnboundType="Decimal" VisibleIndex="2">
                    <dx:CardViewCommandLayoutItem HorizontalAlign="Right" ShowDeleteButton="True" ShowEditButton="True" ShowNewButton="True">
                    <dx:CardViewColumnLayoutItem ColumnName="Quantity">
                    <dx:CardViewColumnLayoutItem ColumnName="Price">
                    <dx:CardViewColumnLayoutItem ColumnName="Sum">
                    <dx:EditModeCommandLayoutItem HorizontalAlign="Right">

See Also