⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 remoteobject.cs

📁 Professional C# 2nd Edition
💻 CS
字号:
using System;

namespace Wrox.ProfessionalCSharp
{
   [Serializable]
   public class StatusEventArgs
   {
      public StatusEventArgs(string m)
      {
         message = m;
      }

      public string Message
      {
         get
         {
            return message;
         }
         set
         {
            message = value;
         }
      }

      private string message;
   }


   public delegate void StatusEvent(object sender, StatusEventArgs e);

	/// <summary>
	/// Summary description for Class1.
	/// </summary>
	public class RemoteObject : MarshalByRefObject
	{
		public RemoteObject()
		{
         Console.WriteLine("RemoteObject constructor called");
		}

      public event StatusEvent Status;

      public void LongWorking(int ms)
      {
         Console.WriteLine("RemoteObject: LongWorking() Started");

         StatusEventArgs e = new StatusEventArgs(
            "Message for Client: LongWorking() Started");
         // fire event
         if (Status != null)
         {
            Console.WriteLine("RemoteObject: Firing Starting Event");
            Status(this, e);
         }

         System.Threading.Thread.Sleep(ms);

         e.Message = "Message for Client: LongWorking() Ending";
         // fire ending event
         if (Status != null)
         {
            Console.WriteLine("RemoteObject: Firing Ending Event");
            Status(this, e);
         }

         Console.WriteLine("RemoteObject: LongWorking() Ending");
      }
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -