• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C# MyDelegate类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中MyDelegate的典型用法代码示例。如果您正苦于以下问题:C# MyDelegate类的具体用法?C# MyDelegate怎么用?C# MyDelegate使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



MyDelegate类属于命名空间,在下文中一共展示了MyDelegate类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: Main

    public static void Main()
    {
        MyDelegate a, b, c, d;

        // Create the delegate object a that references
        // the method Hello:
        a = new MyDelegate(Hello); // Ex A1 - Atribuição de Métodos
        // Create the delegate object b that references
        // the method Goodbye:
        b = new MyDelegate(Goodbye); // Ex A1 - Atribuição de Métodos
        // The two delegates, a and b, are composed to form c:
        c = a + b; // Ex A1 - Adição de Métodos
        // Remove a from the composed delegate, leaving d,
        // which calls only the method Goodbye:
        d = c - a; // Ex A1 - Subtração de métodos

        Console.WriteLine("Invoking delegate a:");
        a("A"); // Ex A1 - Invocação
        Console.WriteLine("Invoking delegate b:");
        b("B"); // Ex A1 - Invocação
        Console.WriteLine("Invoking delegate c:");
        c("C"); // Ex A1 - Invocação // Ex A2 - Não é garantida a ordem de invocação
        Console.WriteLine("Invoking delegate d:");
        d("D"); // Ex A1 - Invocação // Ex A2 - Não é garantida a ordem de invocação
        // Ex A6
        Console.WriteLine("Invoking method delegate:");
        callDelegate(a);

        Console.Read();
    }
开发者ID:jfloff,项目名称:PADI,代码行数:30,代码来源:exercicio-1.cs


示例2: btn_asyncTest_Click

        private void btn_asyncTest_Click(object sender, EventArgs e)
        {
            //Assign a function to the delegate
            myAsync = new MyDelegate(this.SomeFunction);

            myAsync.BeginInvoke(5, 10, null, null);
        }
开发者ID:Tjornfelt,项目名称:WindowsFormsSchoolProject,代码行数:7,代码来源:WindowsForms.cs


示例3: Forget

 public void Forget(string eventName, MyDelegate subscriber)
 {
     if (events.Keys.Contains(eventName))
     {
         events[eventName] -= subscriber;
     }
 }
开发者ID:CTMarak,项目名称:CMP129,代码行数:7,代码来源:Program.cs


示例4: Main

        static void Main(string[] args)
        {
            MyClass obj = new MyClass();
            MyDelegate del1 = new MyDelegate(obj.Func1);
            del1 += new MyDelegate(obj.Func2);

            //上面两句可以简写为以下形式:
            //MyDelegate del1 = obj.Func1;
            //del1 += obj.Func2;

            Delegate[] ds;

            ds = del1.GetInvocationList();
            Console.WriteLine("del1的委托调用列表中包含{0}个方法", ds.GetLength(0));

            del1(5); //先调用obj1.Func1(),再调用obj1.Func2()

            MyDelegate del2 = new MyDelegate(obj.Func1);
            del2 += new MyDelegate(obj.Func2);

            //组合委托

            Delegate mul = del1 + del2;
            ds = mul.GetInvocationList();
            Console.WriteLine("mul的委托调用列表中包含{0}个方法", ds.GetLength(0));
            int ret = (mul as MyDelegate)(10); //获取委托调用列表最后一个方法的返回值

            Console.WriteLine("ret = {0}", ret);

            Console.ReadKey();
        }
开发者ID:ningboliuwei,项目名称:CSharp----_---,代码行数:31,代码来源:Program.cs


示例5: SystemReflectionType_ObjectGetType_Test0

        public MFTestResults SystemReflectionType_ObjectGetType_Test0()
        {
            bool fRes = true;

            ///
            /// Test object.GetType method for various types (including
            /// reflection types and arrays of reflection types).
            /// 
            object o = (object)1;
            fRes &= (o.GetType() == typeof(int));

            o = (object)typeof(Type);
            fRes &= o.GetType() == typeof(Type).GetType();

            o = AppDomain.CurrentDomain.GetAssemblies();
            fRes &= o.GetType() == typeof(Assembly[]);

            o = new TestClass();
            fRes &= o.GetType() == typeof(TestClass);

            o = new TestStruct();
            fRes &= o.GetType() == typeof(TestStruct);

            o = new MyDelegate(MyDelegateImpl);
            fRes &= o.GetType() == typeof(MyDelegate);

            o = (new MyDelegate(MyDelegateImpl)).Method;
            Debug.Print("object (MethodInfo) GetType: " + o.GetType().ToString());

            MethodInfo mi = typeof(SystemReflectionTypeTests).GetMethod("MyDelegateImpl", BindingFlags.Static | BindingFlags.NonPublic);
            fRes &= o.GetType() == mi.GetType();

            return fRes ? MFTestResults.Pass : MFTestResults.Fail;
        }
开发者ID:koson,项目名称:.NETMF_for_LPC17xx,代码行数:34,代码来源:SystemReflectionTypeTests.cs


示例6: TestCombineRemove

	public void TestCombineRemove()
	{
		MyDelegate dela = new MyDelegate( MethodA );
		MyDelegate delb = new MyDelegate( MethodB );
		MyDelegate delc = new MyDelegate( MethodC );
		MyDelegate deld = new MyDelegate( MethodD );

		string val;
		char res;

		// test combine
		MyDelegate del1, del2;
		del1 = dela + delb + delb + delc + delb + delb + deld;
		val = "";
		res = del1( ref val );
		Assert.AreEqual("abbcbbd", val , "#A01");
		Assert.AreEqual('d', res , "#A02");

		// test remove
		del2 = del1 - ( delb + delb );
		val = "";
		res = del2( ref val );
		Assert.AreEqual("abbcd", val , "#A03");
		Assert.AreEqual('d', res , "#A04");

		// we did not affect del1, did we?
		val = "";
		res = del1( ref val );
		Assert.AreEqual("abbcbbd", val , "#A05");
	}
开发者ID:Xtremrules,项目名称:dot42,代码行数:30,代码来源:MulticastDelegateTest_Mono.cs


示例7: DelegateTimer

 public DelegateTimer(DelegateTimerKey key, MyDelegate d, float remainTime)
 {
     mTimerKey = key;
     mDelegate = d;
     mTime = remainTime;
     mRemainTime = remainTime;
 }
开发者ID:Raymenes,项目名称:Rui_Zeng_Portfolio,代码行数:7,代码来源:DelegateTimer.cs


示例8: Main

    public static void Main()
    {
        MyDelegate a, b, c, d;

        // Create the delegate object a that references
        // the method Hello:
        a = new MyDelegate(Hello);
        // Create the delegate object b that references
        // the method Goodbye:
        b = new MyDelegate(Goodbye);
        // The two delegates, a and b, are composed to form c:
        c = a + b;
        // Remove a from the composed delegate, leaving d,
        // which calls only the method Goodbye:
        d = c - a;

        Console.WriteLine("Invoking delegate a:");
        a("A");
        Console.WriteLine("Invoking delegate b:");
        b("B");
        Console.WriteLine("Invoking delegate c:");
        c("C");
        Console.WriteLine("Invoking delegate d:");
        d("D");
    }
开发者ID:dpgit,项目名称:TutorialIntermediate,代码行数:25,代码来源:compose.cs


示例9: Main

        static void Main(string[] args)
        {
            MyDelegate arithmethod = null;
            Console.WriteLine("Please insert two integer numbers");

                int input1 = Convert.ToInt32(Console.ReadLine());
                int input2 = Convert.ToInt32(Console.ReadLine());

                Console.WriteLine("Please choose your operation as + , - , * , M");
                char operationinput = Convert.ToChar(Console.ReadLine());
                switch (operationinput)
                {
                    case '+':
                        arithmethod = new MyDelegate(Add);
                        break;
                    case '-':
                        arithmethod = new MyDelegate(Subtrac);
                        break;
                    case '*':
                        arithmethod = new MyDelegate(Multiply);
                        break;
                    case 'M':
                        arithmethod = new MyDelegate(Max);
                        break;

                }

                int r = arithmethod(input1, input2);
                Console.WriteLine("The result of your {0} operation is {1}", operationinput, r);

            Console.ReadLine();
        }
开发者ID:payam49er,项目名称:experiments,代码行数:32,代码来源:Program.cs


示例10: Main

 static void Main(string[] args)
 {
     deli = new MyDelegate(MyMethod);
     Console.WriteLine("Invoking the method...");
     result = deli.BeginInvoke(MyMethodEnds, null);
     Console.WriteLine("Reached Console.ReadKey()");
     Console.ReadKey();
 }
开发者ID:oblivious,项目名称:Oblivious,代码行数:8,代码来源:Program.cs


示例11: Main

   public static void Main(){
      MyDelegate call = new MyDelegate(FirstMethod);
      call += new MyDelegate(SecondMethod);
 
      call("Message A");
      call("Message B");
      call("Message C");
   }
开发者ID:snellj,项目名称:code,代码行数:8,代码来源:p8-delegate.cs


示例12: Run

        public void Run()
        {
            MyStruct s = new MyStruct();
            s.b = "OK";

            MyDelegate dg = new MyDelegate(s.Test);
            dg();
        }
开发者ID:elasota,项目名称:clarity,代码行数:8,代码来源:TestStructDelegate.cs


示例13: neuDelegate

 public MyDelegate neuDelegate()
 {
     Class1 c2 = new Class1();
                             MyDelegate d1 = new MyDelegate(c2.delegateMethod1);
                             MyDelegate d2 = new MyDelegate(c2.delegateMethod2);
                             MyDelegate d3 = d1 + d2;
                             return d3;
 }
开发者ID:amigodornot666,项目名称:mono-cs,代码行数:8,代码来源:delegate1.cs


示例14: MyDelegate

 delegate string MyDelegate();//声明委托
 static void Main(string[] args)
 {
     Helloworld hello = new Helloworld();
     MyDelegate h = new MyDelegate(hello.HelloCN);
     Console.WriteLine(h());
     h = new MyDelegate(hello.HelloEN);
     Console.WriteLine(h());
 }
开发者ID:icegithub,项目名称:csharp-exercise,代码行数:9,代码来源:Program.cs


示例15: Subscribe

 public void Subscribe(string eventName, MyDelegate subscriber)
 {
     if (!events.Keys.Contains(eventName))
     {
         events.Add(eventName, null);
     }
     events[eventName] += subscriber;
 }
开发者ID:CTMarak,项目名称:CMP129,代码行数:8,代码来源:Program.cs


示例16: button2_Click

 public static void button2_Click(object sender, EventArgs e)
 {
     // Opret derefter en ny knap, der ved tryk starter en ny tråd. Den nye tråd skal have
     // angivet en startmetode. Fra denne startmetode kaldes den metode, der udskriver noget
     // i tekstboksen med det, man ønsker udskrevet, som parameter.
     MyDelegate del = new MyDelegate(button1_Click);
     del("Hello from delegate");
 }
开发者ID:Chhurup,项目名称:WindowsFormsApplication4Delegates,代码行数:8,代码来源:Form1.cs


示例17: getDelegates

public static MyDelegate [] getDelegates()
{
MyDelegate [] del = new MyDelegate[3];
for(int i =0; i < 3; i++)
{
del[i] = delegate{Console.WriteLine("Hi");};
}
return del;
}
开发者ID:EdiCarlos,项目名称:MyPractices,代码行数:9,代码来源:anonymousdel.cs


示例18: Main

        static void Main(string[] args)
        {
			// Create inst of the delegate.
			var myDel = new MyDelegate<string> (Simple.PrintString);
			// Add a method.
			myDel += Simple.PrintUpperString;
			// Call the delegate.
			myDel("Hello, Jack!");
		}
开发者ID:creating2000,项目名称:Codes,代码行数:9,代码来源:generic_delegate.cs


示例19: Main

 static void Main(string[] args)
 {
     MyDelegate objMyDelegate = new MyDelegate(Addition);
     objMyDelegate += Substruction;
     objMyDelegate += Divition;
     objMyDelegate += Multiplication;
     objMyDelegate -= Divition;
     objMyDelegate(10,5);
     Console.Read();
 }
开发者ID:Kaysernayem,项目名称:FTFL-Training-Codes,代码行数:10,代码来源:Program.cs


示例20: MainWindow

        public MainWindow()
        {
            InitializeComponent();

            userDispatcher = Dispatcher.CurrentDispatcher;
            del = new MyDelegate(this.DisplayLog);
            _mediaConsumer = new TCPClient();
            _mediaProducer = new TCPClient();
            Log.Register(this);
        }
开发者ID:DLastStarFighter,项目名称:Project37w,代码行数:10,代码来源:MainWindow.xaml.cs



注:本文中的MyDelegate类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# MyEntity类代码示例发布时间:2022-05-24
下一篇:
C# MyDefinitionId类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap