Back to Devexpress

ASPxValidationSummary.ClientInstanceName Property

aspnet-devexpress-dot-web-dot-aspxvalidationsummary-d4f788a6.md

latest6.0 KB
Original Source

ASPxValidationSummary.ClientInstanceName Property

Gets or sets the editor’s client programmatic identifier.

Namespace : DevExpress.Web

Assembly : DevExpress.Web.v25.2.dll

NuGet Package : DevExpress.Web

Declaration

csharp
[DefaultValue("")]
public string ClientInstanceName { get; set; }
vb
<DefaultValue("")>
Public Property ClientInstanceName As String

Property Value

TypeDefaultDescription
StringString.Empty

A string value that specifies the editor’s client identifier.

|

Remarks

Use the ClientInstanceName property to specify a unique client-side identifier for an editor. The ClientInstanceName property’s value can be used on the client side to programmatically access the client object, rendered for the editor in client-side script. This property is particularly important in referencing the editor, when it is contained within a naming container (for instance, within an ASPxPageControl‘s page or an ASPxPopupControl‘s window).

If the ClientInstanceName property is not specified, an editor’s client identifier is generated automatically, and equals the value of the editor’s ID property. Note that in this case, client-side programmatic access to the editor by its ID is not allowed when the editor is contained within a naming container.

Special Characters in Client Instance Name

If the ClientInstanceName property contains special characters, for instance, the dot (.), you cannot access a client object by this name. Call the GetByName(name) method to retrieve the client-side object instead.

aspx
<dx:ASPxTextBox ... ClientInstanceName="SomeType.SomeProp" />
js
var txt = ASPxClientControl.GetControlCollection().GetByName("SomeType.SomeProp");  
txt.SetText("Some Text");

Example

The following section of the Validation Summary online demo illustrates how to customize the settings of the ASPxValidationSummary control.

This settings are specified within a panel by using the ASPxRadioButtonList, ASPxCheckBox editors.

csharp
protected void Page_Load(object sender, EventArgs e) {
    ApplyValidationSummarySettings();
    ApplyEditorsSettings();
    if(!IsPostBack && !IsCallback)
        ASPxEdit.ValidateEditorsInContainer(this);
}

private void ApplyValidationSummarySettings() {
    vsValidationSummary1.RenderMode = (ValidationSummaryRenderMode)Enum.Parse(typeof
        (ValidationSummaryRenderMode), rblRenderMode.SelectedItem.Value.ToString());
    vsValidationSummary1.ShowErrorAsLink = chbShowErrorAsLink.Checked;
}

private void ApplyEditorsSettings() {
    ASPxEdit[] editors = new ASPxEdit[] { tbName, tbEmail };
    foreach(ASPxEdit editor in editors) {
        editor.ValidationSettings.ValidateOnLeave = chbValidateOnLeave.Checked;
        editor.ValidationSettings.SetFocusOnError = chbSetFocusOnError.Checked;
    }
}
javascript
function ShowHideVS(s, e) {
    if (e.visible)
        document.getElementById("errorsContainer").style.display = "block";
    else
        document.getElementById("errorsContainer").style.display = "none";
}
aspx
<!-- DevExpress Editors for validation -->

<dx:ASPxTextBox ID="tbName" runat="server" Width="200px">
    <ValidationSettings>
        <RequiredField IsRequired="True" ErrorText="Name is required" />
        <RegularExpression ValidationExpression=".{2,}" ErrorText="Name should contain at least two letters" />
    </ValidationSettings>
</dx:ASPxTextBox>

<dx:ASPxTextBox ID="tbEmail" runat="server" Width="200px">
    <ValidationSettings>
        <RequiredField IsRequired="True" ErrorText="E-mail is required" />
        <RegularExpression ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" 
            ErrorText="Invalid e-mail" />
    </ValidationSettings>
</dx:ASPxTextBox>

<!-- ASPxValidationSummary -->

<dx:ASPxValidationSummary ID="vsValidationSummary1" runat="server" 
RenderMode="BulletedList" Width="243px" Paddings-PaddingLeft="14px" ClientInstanceName="validationSummary">
    <ClientSideEvents VisibilityChanged="ShowHideVS" />
</dx:ASPxValidationSummary>

<!-- Panel with settings for the ASPxValidationSummary -->

<dx:ASPxRadioButtonList ID="rblRenderMode" runat="server" SelectedIndex="0" AutoPostBack="True" RepeatDirection="Horizontal">
    <Paddings Padding="0" />
    <Border BorderStyle="None" />
    <Items>
        <dx:ListEditItem Value="BulletedList" />
        <dx:ListEditItem Value="OrderedList" />
        <dx:ListEditItem Value="Table" />
    </Items>
</dx:ASPxRadioButtonList>

<dx:ASPxCheckBox ID="chbShowErrorAsLink" runat="server" AutoPostBack="True" Checked="True" />

<dx:ASPxCheckBox ID="chbValidateOnLeave" runat="server" AutoPostBack="True" Checked="True" />

<dx:ASPxCheckBox ID="chbSetFocusOnError" runat="server" AutoPostBack="True" />

See Also

Validation Summary

ASPxValidationSummary Class

ASPxValidationSummary Members

DevExpress.Web Namespace