Apabila memanggil panggilan balik pemasa dalam fungsi berasingan, seseorang mungkin menghadapi ralat "An object rujukan diperlukan untuk mengakses medan, kaedah atau harta bukan statik..." Ini timbul apabila mengakses ahli kelas bukan statik dalam kaedah statik atau acara.
Untuk menyelesaikan masalah ini, terdapat dua pilihan:
Isytihar Panggilan Balik dan Pembolehubah Ahli sebagai Statik:
public static void Main (string[] args) { Timer _timer = null; static TimeSpan _millisecs; ... }
Buat Contoh daripada Kelas:
MainClass instance = new MainClass(); btn.Clicked += instance.StartClick; btn_stop.Clicked += instance.StopClick;
Pilihan antara pilihan ini bergantung pada keperluan aplikasi. Jika pengurusan negeri global diutamakan, ahli statik boleh digunakan. Sebagai alternatif, mencipta tika memberikan kebolehujian dan enkapsulasi yang lebih baik.
Memahami punca mesej ralat membantu membuat keputusan termaklum. Ralat berlaku kerana ahli bukan statik memerlukan contoh objek untuk diakses, manakala ahli statik tidak.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat 'Rujukan Objek Diperlukan' Apabila Mengakses Ahli Bukan Statik dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!