PictureBox.LoadAsync Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memuat gambar secara asinkron.
Overload
LoadAsync(String) |
Memuat gambar di lokasi yang ditentukan, secara asinkron. |
LoadAsync() |
Memuat gambar secara asinkron. |
LoadAsync(String)
- Sumber:
- PictureBox.cs
- Sumber:
- PictureBox.cs
- Sumber:
- PictureBox.cs
Memuat gambar di lokasi yang ditentukan, secara asinkron.
public:
void LoadAsync(System::String ^ url);
public void LoadAsync (string url);
member this.LoadAsync : string -> unit
Public Sub LoadAsync (url As String)
Parameter
- url
- String
Jalur untuk gambar yang ditampilkan di PictureBox.
Contoh
Contoh kode berikut menunjukkan cara menggunakan LoadAsync metode . Untuk menjalankan contoh ini, tempelkan kode berikut ke dalam Formulir Windows yang berisi PictureBox bernama pictureBox1
dan bernama ButtonstartLoadButton
. Pastikan bahwa Click peristiwa untuk tombol dikaitkan dengan startLoadButton_Click
metode dalam contoh ini. Anda harus mengubah jalur file gambar ke jalur yang valid pada sistem Anda.
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
Keterangan
url
Jika parameter menunjukkan file lokal, format yang disarankan adalah jalur file lokal. Misalnya, file gambar bernama myPicture.jpg yang terletak di c:\ akan diakses dengan meneruskan c:\myPicture.jpg
url
parameter . Jalur lengkap, seperti http://www.contoso.com/path/images/image.jpg
, atau jalur relatif, seperti ./images/image.jpg, dapat digunakan. Jika jalur relatif digunakan, jalur tersebut akan dianggap relatif terhadap direktori kerja. Panggilan ke Load metode mengatur ImageLocation properti ke nilai url
parameter.
Panggilan ke LoadAsync metode mengatur ImageLocation properti ke nilai url
. Selain memanggil LoadAsync metode , Anda harus mengatur WaitOnLoad properti ke false
untuk memuat gambar secara asinkron. Saat memuat gambar secara asinkron, Anda dapat menangani LoadProgressChanged peristiwa untuk menentukan kemajuan beban gambar atau LoadCompleted peristiwa untuk menentukan kapan beban gambar telah selesai. Jika terjadi kesalahan selama operasi pemuatan gambar asinkron, itu akan ditangkap dan dilaporkan oleh Error properti dari AsyncCompletedEventArgs.
Metode ini disimpan dalam tugas yang mengembalikan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Load(String).
Perubahan perilaku beban
Dimulai dengan .NET 8, perilaku bagaimana PictureBox
kontrol memuat gambar jarak jauh berubah. Secara default, System.Net.ServicePointManager.CheckCertificateRevocationList properti diatur ke true
sebelum gambar jarak jauh diunduh melalui WebClient. Pengaturan ini memastikan bahwa server dengan sertifikat memiliki sertifikat yang diperiksa terhadap daftar pencabutan otoritas sertifikat (CRL) sebagai bagian dari proses validasi.
Peringatan
Segera setelah gambar jarak jauh dimuat, CheckCertificateRevocationList
diubah menjadi true
untuk masa pakai aplikasi. Anda dapat kembali ke false
secara manual jika diperlukan, tetapi segera setelah gambar jarak jauh lain dimuat, CheckCertificateRevocationList
diatur ke true
.
Sumber daya jarak jauh yang sebelumnya berfungsi mungkin gagal dimuat ketika CRL yang di-cache secara lokal sudah kedaluarsa dan pembaruan tidak dapat diambil. Ini dapat terjadi ketika jaringan tempat aplikasi berjalan dibatasi dan lokasi CRL tidak ada dalam daftar yang diizinkan.
Ada kemungkinan juga bahwa keterlambatan dalam memeriksa CRL secara negatif memengaruhi kemampuan aplikasi untuk berfungsi.
Anda dapat menolak perilaku ini dengan mengatur System.Windows.Forms.ServicePointManagerCheckCrl
opsi untuk aplikasi, dengan salah satu cara berikut:
Atur properti ke
false
dalam file konfigurasi [app].runtimeconfig.json :{ "configProperties": { "System.Windows.Forms.ServicePointManagerCheckCrl": false } }
<RuntimeHostConfigurationOption>
Tambahkan item dalam file proyek untuk menonaktifkannya:<ItemGroup> <RuntimeHostConfigurationOption Include="System.Windows.Forms.ServicePointManagerCheckCrl" Value="false" /> </ItemGroup>
Berlaku untuk
LoadAsync()
- Sumber:
- PictureBox.cs
- Sumber:
- PictureBox.cs
- Sumber:
- PictureBox.cs
Memuat gambar secara asinkron.
public:
void LoadAsync();
public void LoadAsync ();
member this.LoadAsync : unit -> unit
Public Sub LoadAsync ()
Keterangan
Selain memanggil LoadAsync metode , WaitOnLoad properti harus diatur ke false
untuk memuat gambar secara asinkron. Saat memuat gambar secara asinkron, Anda dapat menangani LoadProgressChanged peristiwa untuk menentukan kemajuan beban gambar atau LoadCompleted peristiwa untuk menentukan kapan beban gambar telah selesai.
Metode ini disimpan dalam tugas yang mengembalikan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Load().
Perubahan perilaku beban
Dimulai dengan .NET 8, perilaku bagaimana PictureBox
kontrol memuat gambar jarak jauh berubah. Secara default, System.Net.ServicePointManager.CheckCertificateRevocationList properti diatur ke true
sebelum gambar jarak jauh diunduh melalui WebClient. Pengaturan ini memastikan bahwa server dengan sertifikat memiliki sertifikat yang diperiksa terhadap daftar pencabutan otoritas sertifikat (CRL) sebagai bagian dari proses validasi.
Peringatan
Segera setelah gambar jarak jauh dimuat, CheckCertificateRevocationList
diubah menjadi true
untuk masa pakai aplikasi. Anda dapat kembali ke false
secara manual jika diperlukan, tetapi segera setelah gambar jarak jauh lain dimuat, CheckCertificateRevocationList
diatur ke true
.
Sumber daya jarak jauh yang sebelumnya berfungsi mungkin gagal dimuat ketika CRL yang di-cache secara lokal sudah kedaluarsa dan pembaruan tidak dapat diambil. Ini dapat terjadi ketika jaringan tempat aplikasi berjalan dibatasi dan lokasi CRL tidak ada dalam daftar yang diizinkan.
Ada kemungkinan juga bahwa keterlambatan dalam memeriksa CRL secara negatif memengaruhi kemampuan aplikasi untuk berfungsi.
Anda dapat menolak perilaku ini dengan mengatur System.Windows.Forms.ServicePointManagerCheckCrl
opsi untuk aplikasi, dengan salah satu cara berikut:
Atur properti ke
false
dalam file konfigurasi [app].runtimeconfig.json :{ "configProperties": { "System.Windows.Forms.ServicePointManagerCheckCrl": false } }
<RuntimeHostConfigurationOption>
Tambahkan item dalam file proyek untuk menonaktifkannya:<ItemGroup> <RuntimeHostConfigurationOption Include="System.Windows.Forms.ServicePointManagerCheckCrl" Value="false" /> </ItemGroup>