Aracılığıyla paylaş


PictureBox.LoadAsync Yöntem

Tanım

Görüntüyü zaman uyumsuz olarak yükler.

Aşırı Yüklemeler

Name Description
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)

Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs

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ği, yönteminin LoadAsync nasıl kullanılacağını gösterir. Bu örneği çalıştırmak için, aşağıdaki kodu adlandırılmış ve adlandırılmış pictureBox1startLoadButtonbir içeren bir PictureBoxButton Windows Formuna yapıştırın. Düğme olayının Click bu örnekteki yöntemle 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 dosya 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.jpgurl erişilebilir. gibi http://www.contoso.com/path/images/image.jpgtam bir yol veya ./images/image.jpggibi göreli bir yol kullanılabilir. Göreli bir yol kullanılırsa, çalışma dizinine göre değerlendirilir. 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 urlayarlarImageLocation. 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 ilerleme durumunu belirlemek için olayı veya bir görüntü yükünün LoadCompleted ne zaman tamamlandığını belirlemek için olayı işleyebilirsinizLoadProgressChanged. Zaman uyumsuz görüntü yükleme işlemi sırasında bir hata oluşursa, özelliği tarafından ErrorAsyncCompletedEventArgsyakalanıp bildirilir.

Bu yöntem, yöntemin zaman uyumlu karşılık geleninin oluşturabileceği tüm kullanım dışı özel durumları döndürdüğü görevde depolar. Döndürülen görevde bir özel durum depolanırsa, görev beklendiğinde bu özel durum oluşturulur. ArgumentExceptiongibi kullanım özel durumları hâlâ eşzamanlı olarak fırlatılır. Depolanan özel durumlar için tarafından Load(String)oluşan ö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. Varsayılan olarak, System.Net.ServicePointManager.CheckCertificateRevocationList özelliği aracılığıyla uzak bir görüntü indirilmeden WebClientönce olarak ayarlanırtrue. Bu ayar, sertifikalara sahip sunucuların doğrulama işleminin bir parçası olarak bu sertifikaları sertifika yetkilisi iptal listesine (CRL) göre 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ınmış 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()

Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs
Kaynak:
PictureBox.cs

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 ilerleme durumunu belirlemek için olayı veya bir görüntü yükünün LoadCompleted ne zaman tamamlandığını belirlemek için olayı işleyebilirsinizLoadProgressChanged.

Bu yöntem, yöntemin zaman uyumlu karşılık geleninin oluşturabileceği tüm kullanım dışı özel durumları döndürdüğü görevde depolar. Döndürülen görevde bir özel durum depolanırsa, görev beklendiğinde bu özel durum oluşturulur. ArgumentExceptiongibi kullanım özel durumları hâlâ eşzamanlı olarak fırlatılır. Depolanan özel durumlar için tarafından Load()oluşan ö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. Varsayılan olarak, System.Net.ServicePointManager.CheckCertificateRevocationList özelliği aracılığıyla uzak bir görüntü indirilmeden WebClientönce olarak ayarlanırtrue. Bu ayar, sertifikalara sahip sunucuların doğrulama işleminin bir parçası olarak bu sertifikaları sertifika yetkilisi iptal listesine (CRL) göre 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ınmış 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