LoadedImageSurface.LoadCompleted Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se produce cuando la imagen se ha descargado, descodificado y cargado en el ICompositionSurface subyacente.
// Register
event_token LoadCompleted(TypedEventHandler<LoadedImageSurface, LoadedImageSourceLoadCompletedEventArgs const&> const& handler) const;
// Revoke with event_token
void LoadCompleted(event_token const* cookie) const;
// Revoke with event_revoker
LoadedImageSurface::LoadCompleted_revoker LoadCompleted(auto_revoke_t, TypedEventHandler<LoadedImageSurface, LoadedImageSourceLoadCompletedEventArgs const&> const& handler) const;
public event TypedEventHandler<LoadedImageSurface,LoadedImageSourceLoadCompletedEventArgs> LoadCompleted;
function onLoadCompleted(eventArgs) { /* Your code */ }
loadedImageSurface.addEventListener("loadcompleted", onLoadCompleted);
loadedImageSurface.removeEventListener("loadcompleted", onLoadCompleted);
- or -
loadedImageSurface.onloadcompleted = onLoadCompleted;
Public Custom Event LoadCompleted As TypedEventHandler(Of LoadedImageSurface, LoadedImageSourceLoadCompletedEventArgs)
<LoadedImageSurface LoadCompleted="eventhandler"/>
Tipo de evento
Ejemplos
En este ejemplo, establecemos el tamaño de un SpriteVisual para que coincida exactamente con el tamaño descodificado de una clase LoadedImageSurface cargada correctamente.
private Load_Completed(LoadedImageSurface sender, LoadedImageSourceLoadCompletedEventArgs e)
{
if(e.Status == LoadedImageSourceLoadStatus.Success){
// imageVisual is a SpriteVisual than has been previously created and whose brush references the LoadedImageSurface
Size decodedSize = sender.DecodedSize;
imageVisual.Size = new Vector2((float)decodedSize.Width, (float)decodedSize.Height);
} else {
// Handle a load failure
}
}
Comentarios
La instancia loadedImageSurface no tendrá una imagen cargada ni información de tamaño, hasta que se active este evento. El evento LoadCompleted se desencadena independientemente del éxito o error y se puede usar LoadedImageSourceLoadCompletedEventArgs para determinar el estado.
El evento LoadCompleted se desencadena cada vez que la superficie de una instancia de LoadedImageSurface se rellena con una imagen. Esto incluye:
- La primera vez que se inicializa loadedImageSurface
- El dispositivo se recupera de un estado perdido.
- Un cambio de PPP hace que se cargue un origen de imagen diferente
- La aplicación se recupera de un estado de memoria bajo
Los usos comunes del evento LoadCompleted son colocar una imagen temporal si el origen de la imagen puede tardar mucho tiempo en cargar o cambiar el tamaño de un objeto visual exactamente al tamaño descodificado de LoadedImageSurface.