PictureBox.LoadAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Carica l'immagine in modo asincrono.
Overload
LoadAsync(String) |
Carica in modo asincrono l'immagine nel percorso specificato. |
LoadAsync() |
Carica l'immagine in modo asincrono. |
LoadAsync(String)
- Origine:
- PictureBox.cs
- Origine:
- PictureBox.cs
- Origine:
- PictureBox.cs
Carica in modo asincrono l'immagine nel percorso specificato.
public:
void LoadAsync(System::String ^ url);
public void LoadAsync (string url);
member this.LoadAsync : string -> unit
Public Sub LoadAsync (url As String)
Parametri
- url
- String
Percorso dell'immagine da visualizzare nel controllo PictureBox.
Esempio
Nell'esempio di codice riportato di seguito viene illustrato come utilizzare il metodo LoadAsync. Per eseguire questo esempio, incollare il codice seguente in un Windows Form contenente un PictureBox oggetto denominato pictureBox1
e un Button denominato startLoadButton
. Assicurarsi che l'evento Click per il pulsante sia associato al startLoadButton_Click
metodo in questo esempio. È necessario modificare il percorso del file di immagine in un percorso valido nel sistema.
private void startButton_Click(object sender, EventArgs e)
{
// Ensure WaitOnLoad is false.
pictureBox1.WaitOnLoad = false;
// Load the image asynchronously.
pictureBox1.LoadAsync(@"http://localhost/print.gif");
}
Private Sub startLoadButton_Click(ByVal sender As Object, _
ByVal e As EventArgs) Handles startLoadButton.Click
' Ensure WaitOnLoad is false.
pictureBox1.WaitOnLoad = False
' Load the image asynchronously.
pictureBox1.LoadAsync("http://localhost/print.gif")
End Sub
Commenti
Se il url
parametro indica un file locale, il formato consigliato è un percorso di file locale. Ad esempio, è possibile accedere a un file di immagine denominato myPicture.jpg che si trova in c:\ passando c:\myPicture.jpg
per il url
parametro . È possibile usare un percorso completo, ad esempio http://www.contoso.com/path/images/image.jpg
, o un percorso relativo, ad esempio ./images/image.jpg. Se viene usato un percorso relativo, verrà considerato relativo alla directory di lavoro. Una chiamata al Load metodo imposta la ImageLocation proprietà sul valore del url
parametro .
Una chiamata al LoadAsync metodo imposta la ImageLocation proprietà sul valore di url
. Oltre a chiamare il LoadAsync metodo , è necessario impostare la WaitOnLoad proprietà su per false
caricare un'immagine in modo asincrono. Quando si carica un'immagine in modo asincrono, è possibile gestire l'evento LoadProgressChanged per determinare lo stato di avanzamento di un caricamento di un'immagine o l'evento LoadCompleted per determinare quando è stato completato il caricamento di un'immagine. Se si verifica un errore durante un'operazione di caricamento asincrono delle immagini, verrà intercettata e segnalata dalla Error proprietà di AsyncCompletedEventArgs.
Questo metodo archivia nell'attività restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Load(String).
Modifiche al comportamento di caricamento
A partire da .NET 8, il comportamento di modifica di un PictureBox
controllo carica un'immagine remota. Per impostazione predefinita, la proprietà viene impostata su prima che System.Net.ServicePointManager.CheckCertificateRevocationList venga scaricata un'immagine remota tramite WebClient.true
Questa impostazione garantisce che i server con certificati abbiano tali certificati controllati rispetto all'elenco di revoche dell'autorità di certificazione (CRL) come parte del processo di convalida.
Avviso
Non appena viene caricata un'immagine remota, CheckCertificateRevocationList
viene modificata in true
per la durata dell'app. È possibile ripristinare false
manualmente se necessario, ma non appena viene caricata un'altra immagine remota, CheckCertificateRevocationList
è impostata su true
.
Una risorsa remota funzionante in precedenza potrebbe non riuscire a essere caricata quando il CRL memorizzato nella cache locale non è aggiornato e non è possibile recuperare un aggiornamento. Ciò può verificarsi quando la rete in cui è in esecuzione l'app è limitata e il percorso CRL non si trova nell'elenco elementi consentiti.
È anche possibile che il ritardo nel controllo dell'elenco CRL influisca negativamente sulla capacità dell'app di funzionare.
Puoi rifiutare esplicitamente questo comportamento impostando l'opzione System.Windows.Forms.ServicePointManagerCheckCrl
per l'app, in uno dei modi seguenti:
Impostare la proprietà su
false
nel file di configurazione [app].runtimeconfig.json :{ "configProperties": { "System.Windows.Forms.ServicePointManagerCheckCrl": false } }
Aggiungere un
<RuntimeHostConfigurationOption>
elemento nel file di progetto per disabilitarlo:<ItemGroup> <RuntimeHostConfigurationOption Include="System.Windows.Forms.ServicePointManagerCheckCrl" Value="false" /> </ItemGroup>
Si applica a
LoadAsync()
- Origine:
- PictureBox.cs
- Origine:
- PictureBox.cs
- Origine:
- PictureBox.cs
Carica l'immagine in modo asincrono.
public:
void LoadAsync();
public void LoadAsync ();
member this.LoadAsync : unit -> unit
Public Sub LoadAsync ()
Commenti
Oltre a chiamare il LoadAsync metodo , la WaitOnLoad proprietà deve essere impostata su per false
caricare un'immagine in modo asincrono. Quando si carica un'immagine in modo asincrono, è possibile gestire l'evento LoadProgressChanged per determinare lo stato di avanzamento di un caricamento di un'immagine o l'evento LoadCompleted per determinare quando è stato completato il caricamento di un'immagine.
Questo metodo archivia nell'attività restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Load().
Modifiche al comportamento di caricamento
A partire da .NET 8, il comportamento di modifica di un PictureBox
controllo carica un'immagine remota. Per impostazione predefinita, la proprietà viene impostata su prima che System.Net.ServicePointManager.CheckCertificateRevocationList venga scaricata un'immagine remota tramite WebClient.true
Questa impostazione garantisce che i server con certificati abbiano tali certificati controllati rispetto all'elenco di revoche dell'autorità di certificazione (CRL) come parte del processo di convalida.
Avviso
Non appena viene caricata un'immagine remota, CheckCertificateRevocationList
viene modificata in true
per la durata dell'app. È possibile ripristinare false
manualmente se necessario, ma non appena viene caricata un'altra immagine remota, CheckCertificateRevocationList
è impostata su true
.
Una risorsa remota funzionante in precedenza potrebbe non riuscire a essere caricata quando il CRL memorizzato nella cache locale non è aggiornato e non è possibile recuperare un aggiornamento. Ciò può verificarsi quando la rete in cui è in esecuzione l'app è limitata e il percorso CRL non si trova nell'elenco elementi consentiti.
È anche possibile che il ritardo nel controllo dell'elenco CRL influisca negativamente sulla capacità dell'app di funzionare.
Puoi rifiutare esplicitamente questo comportamento impostando l'opzione System.Windows.Forms.ServicePointManagerCheckCrl
per l'app, in uno dei modi seguenti:
Impostare la proprietà su
false
nel file di configurazione [app].runtimeconfig.json :{ "configProperties": { "System.Windows.Forms.ServicePointManagerCheckCrl": false } }
Aggiungere un
<RuntimeHostConfigurationOption>
elemento nel file di progetto per disabilitarlo:<ItemGroup> <RuntimeHostConfigurationOption Include="System.Windows.Forms.ServicePointManagerCheckCrl" Value="false" /> </ItemGroup>