Skip to main content

ASPxCaptcha.ChallengeImageCustomRender Event

Enables you to implement custom logic for rendering the ASPxCaptcha’s challenge image.

Namespace: DevExpress.Web

Assembly: DevExpress.Web.v24.1.dll

NuGet Package: DevExpress.Web


public event ChallengeImageCustomRenderEventHandler ChallengeImageCustomRender

Event Data

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

Property Description
Code Gets the code generated within the challenge image of the ASPxCaptcha control.
Image Provides access to a Bitmap object representing the ASPxCaptcha’s challenge image.


The ChallengeImageCustomRender event occurs before each render of the challenge image.

The parameters of the event argument allow you to obtain the generated code (ChallengeImageCustomRenderEventArgs.Code) and draw a custom image (ChallengeImageCustomRenderEventArgs.Image).


The example below demonstrates how to handle the ChallengeImageCustomRender event to implement a custom challenge image.

<dx:ASPxCaptcha ID="ASPxCaptcha1" runat="server" 
                OnChallengeImageCustomRender="OnChallengeImageCustomRender" />
protected void OnChallengeImageCustomRender(object sender, ChallengeImageCustomRenderEventArgs e) {
    using (Graphics graphics = Graphics.FromImage(e.Image)) {
        System.Drawing.Image backgroundImage = System.Drawing.Image.FromFile(Server.MapPath("~/pp.jpg"));
        graphics.DrawImage(backgroundImage, 0, 0, e.Image.Width, e.Image.Height);
        Font font = new Font("Times New Roman", 40.0f, FontStyle.Bold, GraphicsUnit.Pixel);
        graphics.DrawString(e.Code, font, Brushes.Red, new PointF(0.0f, 0.0f));

Start and End Marks

See Also