Condividi tramite


Image.ImageFailed Evento

Definizione

Si verifica quando si verifica un errore associato al recupero o al formato dell'immagine.

public:
 virtual event ExceptionRoutedEventHandler ^ ImageFailed;
// Register
event_token ImageFailed(ExceptionRoutedEventHandler const& handler) const;

// Revoke with event_token
void ImageFailed(event_token const* cookie) const;

// Revoke with event_revoker
Image::ImageFailed_revoker ImageFailed(auto_revoke_t, ExceptionRoutedEventHandler const& handler) const;
public event ExceptionRoutedEventHandler ImageFailed;
function onImageFailed(eventArgs) { /* Your code */ }
image.addEventListener("imagefailed", onImageFailed);
image.removeEventListener("imagefailed", onImageFailed);
- or -
image.onimagefailed = onImageFailed;
Public Custom Event ImageFailed As ExceptionRoutedEventHandler 
<Image ImageFailed="eventhandler"/>

Tipo evento

Commenti

Le condizioni in cui può verificarsi questo evento includono:

  • Impossibile trovare il file
  • Formato di file non valido (non riconosciuto o non supportato)
  • Errore di decodifica del formato di file sconosciuto dopo il caricamento
  • Ricaricamento completo delle risorse dal sistema È possibile usare ErrorMessage nei dati dell'evento per determinare la natura dell'errore.

ImageFailed e ImageOpened si escludono a vicenda. Un evento o l'altro verrà sempre attivato ogni volta che un oggetto Image ha un valore di origine impostato o reimpostato.

Uno scenario per la gestione di ImageFailed consiste nell'impostare UriSource dell'origine BitmapImage sottostante su un file di immagine locale diverso. Può fungere da valore di fallback da visualizzare invece di spazio vuoto. Ad esempio, se si sta tentando di visualizzare un'immagine esterna in cui è possibile che l'origine non sia più presente o per quando l'utente non ha connessione Internet, è possibile impostare UriSource per fare riferimento a un'immagine di fallback locale o segnaposto che fa parte del pacchetto dell'app ed è sempre garantita la disponibilità.

Quando l'elemento Image non si trova nella struttura ad albero visuale attiva, l'elemento Image non genera eventi ImageOpened o ImageFailed. Se è necessario ricevere questi eventi mentre l'elemento non si trova nell'albero live, usare BitmapImage. ImageOpened/Eventi ImageFailed .

private void Image_ImageFailed(object sender, ExceptionRoutedEventArgs e) {
    Image img = sender as Image;
    BitmapImage fallbackImage = new BitmapImage(new Uri("ms-appx:///Images/fallback.png"));
    img.Width = 100; //set to known width of this source's natural size
     //might instead want image to stretch to fill, depends on scenario
    img.Source = fallbackImage;
}

Risorse dell'immagine

Le risorse possono usare un modello di qualificatore di risorse per caricare risorse diverse a seconda del ridimensionamento specifico del dispositivo. Qualsiasi risorsa recuperata originariamente per l'app viene rivalutata automaticamente se il fattore di ridimensionamento cambia durante l'esecuzione dell'app. Inoltre, quando tale risorsa è l'origine dell'immagine per un oggetto Image , uno degli eventi di caricamento di origine (ImageOpened o ImageFailed) viene generato in seguito all'azione del sistema di richiesta della nuova risorsa e quindi l'applicazione all'immagine. Lo scenario in cui può verificarsi una modifica della scalabilità in fase di esecuzione è se l'utente sposta l'app in un monitoraggio diverso quando è disponibile più di una. Di conseguenza, gli eventi ImageOpened o ImageFailed possono verificarsi in fase di esecuzione quando viene gestita la modifica della scala, anche nei casi in cui l'origine è impostata in XAML.

Si applica a