Skip to main content
All docs
V24.2

AsyncDownloadPolicy.Failed Event

Occurs if an external resource fails to load.

Namespace: DevExpress.Data

Assembly: DevExpress.Data.v24.2.dll

NuGet Package: DevExpress.Data

#Declaration

#Event Data

The Failed event's data class is AsyncDownloadPolicy.FailedEventArgs. The following properties provide information specific to this event:

Property Description
Content Gets or sets the content in place of an external resource that fails to load.
ErrorContent
Exception Gets the exception.
Uri Gets the identifier of the downloaded resource.
ValueType Gets a value that identifies the group of controls to which an individual control (that initiated the download) belongs. Inherited from AsyncDownloadPolicy.AsyncDownloaderEventArgs.

The event data class exposes the following methods:

Method Description
Throw() Throws the exception.

#Remarks

Handle the Failed event to supply the content instead of the resource that could not be loaded or throw an exception.

Use the e.Content event parameter to specify the content instead of an external resource that fails to load. Call the e.Throw() method to throw an exception.

The following example handles the Failed event to display a placeholder image in a WinForms PictureEdit if an external image fails to load:

public Form1() {
    InitializeComponent();
    DevExpress.Data.AsyncDownloadPolicy.Failed += AsyncDownloadPolicy_Failed;
}

void AsyncDownloadPolicy_Failed(object sender, DevExpress.Data.AsyncDownloadPolicy.FailedEventArgs e) {
    if (e.ValueType.Name == "ImageOrSvgImageResult") {
        MemoryStream stream = new MemoryStream();
        /* A placeholder image is obtained from the DevExpress SvgImageCollection.
         * The placeholder image was added to the SvgImageCollection at design time.
         */
        var errorImage = svgImageCollection1[0];
        errorImage.Save(stream);
        e.Content = stream;
    }
}

async void btnLoadImage_Click(object sender, EventArgs e) {
    await pictureEdit1.LoadAsync("EXTERNAL_IMAGE_URL");
}

Read the following topic for additional information: Suppress Control Requests to Download Data from External URLs.

See Also