PictureBox.LoadAsync Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Görüntüyü zaman uyumsuz olarak yükler.
Aşırı Yüklemeler
LoadAsync(String) |
Görüntüyü belirtilen konuma zaman uyumsuz olarak yükler. |
LoadAsync() |
Görüntüyü zaman uyumsuz olarak yükler. |
LoadAsync(String)
Görüntüyü belirtilen konuma zaman uyumsuz olarak yükler.
public:
void LoadAsync(System::String ^ url);
public void LoadAsync (string url);
member this.LoadAsync : string -> unit
Public Sub LoadAsync (url As String)
Parametreler
- url
- String
Görüntünün içinde PictureBoxgörüntüleneceği yol.
Örnekler
Aşağıdaki kod örneğinde yönteminin nasıl kullanılacağı gösterilmektedir LoadAsync . Bu örneği çalıştırmak için, aşağıdaki kodu adlandırılmış ve Button adlandırılmış pictureBox1
startLoadButton
bir içeren bir PictureBox Windows Formuna yapıştırın. Düğme olayının Click bu örnekteki yöntemiyle ilişkilendirildiğinden startLoadButton_Click
emin olun. Görüntü dosyası yolunu sisteminizde geçerli olan bir yola değiştirmeniz gerekir.
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
Açıklamalar
url
Parametresi yerel bir dosyayı gösteriyorsa, önerilen biçim yerel bir dosya yoludur. Örneğin, c:\ konumunda bulunan myPicture.jpg adlı bir görüntü dosyasına parametresi geçirilerek c:\myPicture.jpg
url
erişilebilir. gibi http://www.contoso.com/path/images/image.jpg
tam bir yol veya ./images/image.jpggibi göreli bir yol kullanılabilir. Göreli yol kullanılırsa, çalışma dizinine göre kabul edilir. yöntemine yapılan Load bir çağrı, özelliğini parametresinin url
değerine ayarlarImageLocation.
yöntemine yapılan LoadAsync bir çağrı, özelliğini değerine url
ayarlarImageLocation. yöntemini çağırmanın LoadAsync yanı sıra, bir görüntüyü zaman uyumsuz olarak yüklemek için özelliğini false
olarak ayarlamanız WaitOnLoad gerekir. Bir görüntüyü zaman uyumsuz olarak yüklediğinizde, bir görüntü yükünün LoadProgressChanged ilerleme durumunu belirlemek için olayı veya LoadCompleted bir görüntü yükünün ne zaman tamamlandığını belirlemek için olayı işleyebilirsiniz. Zaman uyumsuz görüntü yükleme işlemi sırasında bir hata oluşursa, bu hata yakalanacak ve özelliği AsyncCompletedEventArgstarafından Error bildirilecektir.
Bu yöntem, yöntemin zaman uyumlu karşılık geleninin atabileceği tüm kullanım dışı özel durumları döndürdüğü görevde depolar. Döndürülen görevde bir özel durum depolanıyorsa, görev beklenirken bu özel durum oluşturulur. gibi ArgumentExceptionkullanım özel durumları yine de zaman uyumlu olarak oluşturulur. Depolanan özel durumlar için tarafından oluşan Load(String)özel durumlara bakın.
Yük davranışı değişiklikleri
.NET 8'den başlayarak, bir PictureBox
denetimin uzak görüntüyü yükleme davranışı değişti. Özelliği varsayılan olarak, System.Net.ServicePointManager.CheckCertificateRevocationList uzak görüntü aracılığıyla WebClientindirilmeden önce olarak ayarlanırtrue
. Bu ayar, sertifikalara sahip sunucuların bu sertifikaları doğrulama işleminin bir parçası olarak sertifika yetkilisi iptal listesine (CRL) karşı denetlemesini sağlar.
Uyarı
Uzak görüntü yüklenir yüklenmez, CheckCertificateRevocationList
uygulamanın ömrü boyunca olarak değiştirilir true
. Gerekirse el ile geri dönebilirsiniz false
, ancak başka bir uzak görüntü yüklenir yüklenmez olarak CheckCertificateRevocationList
ayarlanır true
.
Yerel olarak önbelleğe alınan CRL güncel olmadığında ve bir güncelleştirme alınamayınca daha önce çalışan bir uzak kaynak yüklenemeyebilir. Uygulamanın üzerinde çalıştığı ağ kısıtlandığında ve CRL konumu izin verilenler listesinde olmadığında bu durum oluşabilir.
CRL'nin denetlenmesindeki gecikmenin uygulamanın çalışma becerisini olumsuz etkilemesi de mümkündür.
Uygulamanın seçeneğini aşağıdaki yollardan biriyle ayarlayarak System.Windows.Forms.ServicePointManagerCheckCrl
bu davranışı geri çevirebilirsiniz:
[app].runtimeconfig.json yapılandırma dosyasında özelliğini
false
olarak ayarlayın:{ "configProperties": { "System.Windows.Forms.ServicePointManagerCheckCrl": false } }
Devre dışı bırakmak için proje dosyasına bir
<RuntimeHostConfigurationOption>
öğe ekleyin:<ItemGroup> <RuntimeHostConfigurationOption Include="System.Windows.Forms.ServicePointManagerCheckCrl" Value="false" /> </ItemGroup>
Şunlara uygulanır
LoadAsync()
Görüntüyü zaman uyumsuz olarak yükler.
public:
void LoadAsync();
public void LoadAsync ();
member this.LoadAsync : unit -> unit
Public Sub LoadAsync ()
Açıklamalar
yöntemini çağırmanın LoadAsync yanı sıra, WaitOnLoad bir görüntüyü zaman uyumsuz olarak yüklemek için özelliğinin olarak ayarlanması false
gerekir. Bir görüntüyü zaman uyumsuz olarak yüklediğinizde, bir görüntü yükünün LoadProgressChanged ilerleme durumunu belirlemek için olayı veya LoadCompleted bir görüntü yükünün ne zaman tamamlandığını belirlemek için olayı işleyebilirsiniz.
Bu yöntem, yöntemin zaman uyumlu karşılık geleninin atabileceği tüm kullanım dışı özel durumları döndürdüğü görevde depolar. Döndürülen görevde bir özel durum depolanıyorsa, görev beklenirken bu özel durum oluşturulur. gibi ArgumentExceptionkullanım özel durumları yine de zaman uyumlu olarak oluşturulur. Depolanan özel durumlar için tarafından oluşan Load()özel durumlara bakın.
Yük davranışı değişiklikleri
.NET 8'den başlayarak, bir PictureBox
denetimin uzak görüntüyü yükleme davranışı değişti. Özelliği varsayılan olarak, System.Net.ServicePointManager.CheckCertificateRevocationList uzak görüntü aracılığıyla WebClientindirilmeden önce olarak ayarlanırtrue
. Bu ayar, sertifikalara sahip sunucuların bu sertifikaları doğrulama işleminin bir parçası olarak sertifika yetkilisi iptal listesine (CRL) karşı denetlemesini sağlar.
Uyarı
Uzak görüntü yüklenir yüklenmez, CheckCertificateRevocationList
uygulamanın ömrü boyunca olarak değiştirilir true
. Gerekirse el ile geri dönebilirsiniz false
, ancak başka bir uzak görüntü yüklenir yüklenmez olarak CheckCertificateRevocationList
ayarlanır true
.
Yerel olarak önbelleğe alınan CRL güncel olmadığında ve bir güncelleştirme alınamayınca daha önce çalışan bir uzak kaynak yüklenemeyebilir. Uygulamanın üzerinde çalıştığı ağ kısıtlandığında ve CRL konumu izin verilenler listesinde olmadığında bu durum oluşabilir.
CRL'nin denetlenmesindeki gecikmenin uygulamanın çalışma becerisini olumsuz etkilemesi de mümkündür.
Uygulamanın seçeneğini aşağıdaki yollardan biriyle ayarlayarak System.Windows.Forms.ServicePointManagerCheckCrl
bu davranışı geri çevirebilirsiniz:
[app].runtimeconfig.json yapılandırma dosyasında özelliğini
false
olarak ayarlayın:{ "configProperties": { "System.Windows.Forms.ServicePointManagerCheckCrl": false } }
Devre dışı bırakmak için proje dosyasına bir
<RuntimeHostConfigurationOption>
öğe ekleyin:<ItemGroup> <RuntimeHostConfigurationOption Include="System.Windows.Forms.ServicePointManagerCheckCrl" Value="false" /> </ItemGroup>