Latest web development tutorials
×

C# หลักสูตร

C# หลักสูตร C# แนะนำโดยย่อ C# สิ่งแวดล้อม C# โครงสร้างหลักสูตร C# ไวยากรณ์พื้นฐาน C# ชนิดข้อมูล C# ประเภทการแปลง C# ตัวแปร C# คงที่ C# ผู้ประกอบการ C# ผู้พิพากษา C# การไหลเวียน C# บรรจุภัณฑ์ C# ทาง C# ประเภท nullable C# แถว(Array) C# เชือก(String) C# โครงสร้าง(Struct) C# แจกแจง(Enum) C# หมวดหมู่(Class) C# สืบทอด C# polymorphism C# ดำเนินงานมาก C# อินเตอร์เฟซ(Interface) C# namespaces(Namespace) C# สั่ง preprocessor C# นิพจน์ปกติ C# การจัดการข้อยกเว้น C# input และ output ไฟล์

C# การสอนที่ทันสมัย

C# คุณสมบัติ(Attribute) C# การสะท้อนกลับ(Reflection) C# คุณสมบัติ(Property) C# ทำดัชนี(Indexer) C# มอบความไว้วางใจ(Delegate) C# เหตุการณ์(Event) C# ตั้งค่า(Collection) C# ยาชื่อสามัญ(Generic) C# วิธีการที่ไม่ระบุชื่อ C# รหัสที่ไม่ปลอดภัย C# multithreading

C # เหตุการณ์ (event)

อีเว้นท์ (event) โดยทั่วไปว่าคือการกระทำของผู้ใช้เช่นปุ่มคลิกเมาส์เคลื่อนไหว ฯลฯ หรือบางส่วนที่เกิดขึ้นใหม่เช่นการแจ้งเตือนระบบสร้างการประยุกต์ใช้ความต้องการที่จะตอบสนองต่อเหตุการณ์เมื่อมีเหตุการณ์เกิดขึ้น ยกตัวอย่างเช่นการขัดจังหวะ เหตุการณ์ที่จะใช้สำหรับการสื่อสารระหว่างกระบวนการ

โดยใช้เหตุการณ์ตัวแทน

และเหตุการณ์ที่เกิดขึ้นในการประกาศคลาสและโดยใช้คลาสเดียวกันผู้ร่วมประชุมที่เกี่ยวข้องกับการจัดการเหตุการณ์หรือชั้นเรียนอื่น ๆ ชั้นมีกิจกรรมสำหรับกิจกรรมการเผยแพร่นี้เรียกว่าสำนักพิมพ์ (Publisher) ระดับอื่น ๆยอมรับประเภทเหตุการณ์ที่เรียกว่าฟีดอ่าน (Subscriber) ระดับเหตุการณ์ที่เกิดขึ้นโดยใช้เผยแพร่ - สมัคร (ผู้เผยแพร่สมาชิก) รุ่น

สำนักพิมพ์ (สำนักพิมพ์) และมีการจัดกิจกรรมที่เป็นตัวแทนที่กำหนดวัตถุการติดต่อระหว่างเหตุการณ์และผู้ได้รับมอบหมายมีการกำหนดไว้ในวัตถุนี้ วัตถุ Publisher (สำนักพิมพ์) รุ่นที่เรียกเหตุการณ์นี้และแจ้งให้วัตถุอื่น ๆ

อุปกรณ์ฟีด (Subscriber) เป็นเหตุการณ์ที่ได้รับการยอมรับและให้วัตถุจัดการเหตุการณ์ในสำนักพิมพ์ (Publisher) ระดับผู้รับมอบสิทธิ์อ่านฟีดภาวนา (Subscriber) วิธีการเรียน (ตัวจัดการเหตุการณ์)

งบจัดกิจกรรม (event)

ในกรณีที่มีการประกาศภายในชั้นแรกคุณจะต้องประกาศประเภทผู้รับมอบสิทธิ์สำหรับเหตุการณ์ ตัวอย่างเช่น:

ผู้ร่วมประชุมสาธารณะ (Status String) เป็นโมฆะ BoilerLogHandler;

จากนั้นประกาศเหตุการณ์ที่ตัวเองใช้คำว่าเหตุการณ์:

// ตามคำจำกัดความข้างต้นของเหตุการณ์ที่ผู้ร่วมประชุมเหตุการณ์ที่ประชาชน BoilerLogHandler BoilerEventLog;

รหัสข้างต้นกำหนดเป็นตัวแทนและเหตุการณ์ชื่อBoilerEventLogชื่อBoilerLogHandler เหตุการณ์จะถูกสร้างขึ้นเมื่อผู้ร่วมประชุมจะเรียก

ตัวอย่างที่ 1

การใช้ระบบ
SimpleEvent namespace
{
   การใช้ระบบ

   EventTest เรียนสาธารณะ
   {
      ค่า int เอกชน

      ผู้ร่วมประชุมโมฆะสาธารณะ NumManipulationHandler ();

      เหตุการณ์ที่ประชาชน NumManipulationHandler ChangeNum;

      โมฆะป้องกันเสมือน OnNumChanged ()
      {
         ถ้า (ChangeNum! = null)
         {
            ChangeNum ();
         }
         อื่น
         {
            Console.WriteLine ( "เหตุการณ์ยิง!");
         }

      }
      ประชาชน EventTest (int n)
      {
         SetValue (n);
      }
      โมฆะสาธารณะ SetValue (int n)
      {
         ถ้า (ค่า! = n)
         {
            value = n;
            OnNumChanged ();
         }
      }
   }
   MainClass เรียนสาธารณะ
   {
      ประชาชนเป็นโมฆะคง Main ()
      {
         EventTest E = EventTest ใหม่ (5)
         (7) e.SetValue;
         e.SetValue (11);
         Console.ReadKey ();
      }
   }
}

เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:

เหตุการณ์ยิง!
เหตุการณ์ยิง!
เหตุการณ์ยิง!

ตัวอย่างที่ 2

ตัวอย่างนี้ให้ระบบหม้อไอน้ำน้ำร้อนที่เรียบง่ายสำหรับการใช้งานการแก้ไขปัญหา เมื่อวิศวกรบำรุงรักษาเพื่อตรวจสอบหม้อไอน้ำ, หม้อไอน้ำที่อุณหภูมิและความดันจะเป็นบันทึกการบำรุงรักษาวิศวกรบันทึกลงในแฟ้มบันทึกโดยอัตโนมัติ

การใช้ระบบ
โดยใช้ System.IO;

BoilerEventAppl namespace
{

   // บอยเลอร์บอยเลอร์คลาส
   {
      อุณหภูมิ int เอกชน
      ความดัน int เอกชน
      หม้อไอน้ำสาธารณะ (int T, int P)
      {
         อุณหภูมิ T =;
         ความดัน = p;
      }

      int สาธารณะ getTemp ()
      {
         กลับอุณหภูมิ;
      }
      int สาธารณะ getPressure ()
      {
         กลับดัน
      }
   }
   // DelegateBoilerEvent ระดับสำนักพิมพ์ที่จัดกิจกรรม
   {
      ผู้ร่วมประชุมสาธารณะ (Status String) เป็นโมฆะ BoilerLogHandler;

      // ตามคำจำกัดความข้างต้นของเหตุการณ์ที่ผู้ร่วมประชุมเหตุการณ์ที่ประชาชน BoilerLogHandler BoilerEventLog;

      โมฆะสาธารณะ LogProcess ()
      {
         หมายเหตุสตริง = "โอเค";
         หม้อไอน้ำ B = หม้อไอน้ำใหม่ (100, 12);
         int t = b.getTemp ();
         int p = b.getPressure ();
         ถ้า (T> 150 || T <80 || p <12 || p> 15)
         {
            หมายเหตุ = "จำเป็นต้องบำรุงรักษา";
         }
         OnBoilerEventLog ( "การเข้าสู่ระบบข้อมูล: \ n");
         OnBoilerEventLog ( "temparature" + T + "\ nPressure:" + P);
         OnBoilerEventLog ( "\ nMessage:" + หมายเหตุ);
      }

      โมฆะป้องกัน OnBoilerEventLog (ข้อความ String)
      {
         ถ้า (BoilerEventLog! = null)
         {
            BoilerEventLog (ข้อความ);
         }
      }
   }
   ข้อตกลงและเงื่อนไขการจองดังกล่าว // เขียนไป BoilerInfoLogger ระดับล็อกไฟล์
   {
      FS FileStream;
      StreamWriter SW;
      ประชาชน BoilerInfoLogger (สตริงชื่อไฟล์)
      {
         FS = FileStream ใหม่ (ชื่อไฟล์ FileMode.Append, FileAccess.Write);
         SW = StreamWriter ใหม่ (FS);
      }
      โมฆะสาธารณะ Logger (ข้อมูล String)
      {
         sw.WriteLine (ข้อมูล);
      }
      ปิดโมฆะสาธารณะ ()
      {
         sw.Close ();
         fs.Close ();
      }
   }
   // การสมัครสมาชิกเหตุการณ์เป็นชั้นสาธารณะ RecordBoilerInfo
   {
      เป็นโมฆะคง Logger (ข้อมูล String)
      {
         Console.WriteLine (ข้อมูล);
      } // สิ้นสุดของ Logger

      เป็นโมฆะคง main (String args [])
      {
         BoilerInfoLogger FileLog = ใหม่ BoilerInfoLogger ( "E: \\ boiler.txt");
         DelegateBoilerEvent boilerEvent = DelegateBoilerEvent ใหม่ ();
         boilerEvent.BoilerEventLog + = ใหม่ 
         DelegateBoilerEvent.BoilerLogHandler (Logger);
         boilerEvent.BoilerEventLog + = ใหม่ 
         DelegateBoilerEvent.BoilerLogHandler (filelog.Logger);
         boilerEvent.LogProcess ();
         Console.ReadLine ();
         filelog.Close ();
      } // End หลัก

   } // สิ้นสุดของ RecordBoilerInfo
}

เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:

ข้อมูลการเข้าสู่ระบบ:

อุณหภูมิ 100
ความดัน 12

ข้อความ: โอเค