หัวข้อ C# สำคัญ

อีเวนต์

ประกาศการแจ้งเตือนโดยไม่เปิดเผยการเรียก delegate

ทำงานอย่างไร

อีเวนต์สร้างความสัมพันธ์ผู้ประกาศและผู้ติดตามที่ปลอดภัยด้านชนิดข้อมูล

ผู้ติดตามเพิ่มและลบตัวจัดการได้ แต่มีเพียงคลาสที่ประกาศเท่านั้นที่ทำให้อีเวนต์เกิดขึ้นได้

ตัวอย่าง C# ที่รันได้

C#
รันโค้ด →
Program.cs
using System;

class Counter
{
    public event EventHandler? ThresholdReached;
    public void ReachThreshold() => ThresholdReached?.Invoke(this, EventArgs.Empty);
}

class Program
{
    static void Main()
    {
        var counter = new Counter();
        counter.ThresholdReached += (_, _) => Console.WriteLine("Threshold reached");
        counter.ReachThreshold();
    }
}
ผลลัพธ์ที่คาดหวัง
Threshold reached

ฝึกกับดีบักเกอร์

ตั้ง breakpoint ที่การกำหนดค่าหรือเงื่อนไขสำคัญ กด Debug แล้วดูค่าตัวแปรภายในก่อนไปยังบรรทัดถัดไป

ฝึกด้วยโจทย์

ใช้สิ่งที่เรียนในบทนี้แก้ปัญหาจริง ทุกโจทย์รันในเบราว์เซอร์ พร้อมการทดสอบทันทีและรีวิวจาก AI

โจทย์ทั้งหมด