Mengatasi Isu Mengunci Fail Semasa Mengemas kini Imej PictureBox
Mengemas kini sifat Imej PictureBox dengan Peta Bit baharu kadangkala boleh mencetuskan pengecualian, menjadikan fail imej terkunci. Ini kerana Bitmap mengekalkan rujukan kepada fail sumber.
Penyelesaian: Pemuatan Imej yang Cekap Tanpa Kunci Fail
Penyelesaian melibatkan memuatkan imej tanpa membuat kunci fail. Kaedah ini sangat berkesan:
<code class="language-csharp">public static Image FromFile(string path) { byte[] bytes = File.ReadAllBytes(path); using (MemoryStream ms = new MemoryStream(bytes)) { return Image.FromStream(ms); } }</code>
Kod ini membaca imej ke dalam tatasusunan bait, kemudian menstrimkannya ke objek Imej, mengelakkan kunci fail. Imej itu kemudiannya boleh diberikan dengan selamat ke PictureBox.
Tanda Aras Prestasi
Perbandingan prestasi terhadap kaedah penyalinan Bitmap mendedahkan bahawa pendekatan tatasusunan bait ini jauh lebih pantas (kira-kira 0.26 ms setiap imej berbanding 0.50 ms untuk kaedah penyalinan).
Mendapatkan semula Objek Peta Bit
Jika anda memerlukan objek Bitmap secara khusus, sedikit pengubahsuaian sudah memadai:
<code class="language-csharp">return (Bitmap)Image.FromStream(ms);</code>
Ini memastikan objek yang dikembalikan adalah jenis Peta Bit.
Kaedah ini menyediakan penyelesaian yang boleh dipercayai dan berprestasi untuk mengemas kini imej PictureBox, menghalang penguncian fail dan meningkatkan kecekapan aplikasi.
Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan Penguncian Fail Semasa Mengemas kini Imej PictureBox?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!