Skip to main content
Tab

ASPxEditBase.CustomJSProperties Event

Enables you to supply any server data that can then be parsed on the client.

Namespace: DevExpress.Web

Assembly: DevExpress.Web.v23.2.dll

NuGet Package: DevExpress.Web

Declaration

public event CustomJSPropertiesEventHandler CustomJSProperties

Event Data

The CustomJSProperties event's data class is CustomJSPropertiesEventArgs. The following properties provide information specific to this event:

Property Description
Properties Gets a collection of temporary client properties.

Remarks

In some instances, it is necessary to obtain server information on the client. The CustomJSProperties event enables you to declare temporary client properties. Once declared, a property can be accessed on the client.

To add new properties, use the event parameter’s CustomJSPropertiesEventArgs.Properties property, which represents a collection of property names and their values. The only requirement is that property names must begin with the ‘cp’ prefix, to avoid rewriting the ASPxEditBase‘s base properties.

Note

Typically, using a specifically introduced ASPxEditBase.JSProperties property might be more convenient and efficient than handling the CustomJSProperties event, which is mostly declared for backward compatibility. Refer to the following topic for more information: How to Access Server Data on the Client Side.

Example

The example below demonstrates how to get values stored in a hidden column of the Combo Box control on the client:

<dx:ASPxComboBox ID="ASPxComboBox1" ClientInstanceName="cbox" ValueField="ProductID" DropDownStyle="DropDownList"
    OnCustomJSProperties="ASPxComboBox1_CustomJSProperties" DataSourceID="SqlDataSource1" runat="server" Width="300"> 
    <Columns>
        <dx:ListBoxColumn FieldName="ProductID" />
        <dx:ListBoxColumn FieldName="ProductName" />
        <dx:ListBoxColumn FieldName="CategoryID" />
        <dx:ListBoxColumn FieldName="UnitPrice" Visible="false" />
    </Columns>
</dx:ASPxComboBox>
<dx:ASPxButton ID="ASPxButton1" runat="server" Text="UnitPrice value" AutoPostBack="false">
    <ClientSideEvents Click="function(s, e) {
        var v = cbox.cpHiddenColumnValues[cbox.GetSelectedIndex()];
        alert(v);
        }" />
</dx:ASPxButton>
protected void ASPxComboBox1_CustomJSProperties(object sender, DevExpress.Web.CustomJSPropertiesEventArgs e)
{
    ArrayList list = new ArrayList();
    foreach (ListEditItem item in ASPxComboBox1.Items)
        list.Add(item.GetFieldValue("UnitPrice"));
    e.Properties["cpHiddenColumnValues"] = list;
}

View Example: Combo Box for ASP.NET Web Forms - How to get hidden column values on the client

See Also