示例#1
0
 /// <summary>
 /// Takes it a list of items and then performs an action to each item in the list.
 /// </summary>
 /// <param name="list">The list of items</param>
 /// <param name="action">The action to perform on each item</param>
 void DoToList(List<Item> list, SomeDelegate action)
 {
     foreach (Item item in list)
     {
         action(item);
     }
 }
 public void Main()
 {
     SomeClassFoo slf = new SomeClassFoo ();
     someDelegate = Hoge;
     someDelegate += slf.SomeMethod;
     someDelegate (1.0f);
 }
示例#3
0
 static void Main()
 {
     SomeDelegate d = new SomeDelegate(Print);
     d += Sleep;
     for (int i = 0; i < 5; i++)
     {
         d(3);
     }
 }
示例#4
0
        public MainForm()
        {
            InitializeComponent();
            Thread t = new Thread(new ThreadStart(Thread_Function_ReadDataFromServer));

            byte[] data;
            //using (var ms = new MemoryStream())
            //{
            //    Serializer.Serialize(ms, cust);
            //    data = ms.ToArray();
            //}

            Sensor_A      = new SensorData();
            Sensor_A.Name = "Sensor A";

            // Serialyze MemoryStream
            BinaryFormatter bf = new BinaryFormatter();

            using (var ms = new MemoryStream())
            {
                bf.Serialize(ms, Sensor_A);
                data = ms.ToArray();
            }
            // DeSerialyze MemoryStream
            using (var memStream = new MemoryStream())
            {
                var binForm = new BinaryFormatter();
                memStream.Write(data, 0, data.Length);
                memStream.Seek(0, SeekOrigin.Begin);
                var obj = binForm.Deserialize(memStream);
                Sensor_B = (SensorData)obj;
                textBox_Tab_TSP_UDP_Rx.Text = Sensor_B.Name;
            }


            // Serialization File
            BinaryFormatter formatter = new BinaryFormatter();

            using (SendSensorData = new FileStream("./SensorsInfo.dat", FileMode.Create, FileAccess.Write, FileShare.None))
            {
                formatter.Serialize(SendSensorData, Sensor_A);
            }
            // DeSerialization File
            //Восстановим состояние объекта
            using (var fStream = File.OpenRead("./SensorsInfo.dat"))
            {
                Sensor_B = (SensorData)formatter.Deserialize(fStream);
            }
            textBox_Tab_TSP_UDP_Rx.Text = Sensor_B.Name;



            sd = ParseMessageOverDelegate;
            // sd("Hello rfom Delegate");
            asyncRes = sd.BeginInvoke("Hello from Delegate", null, null);
            t.Start();
        }
示例#5
0
        static void Main(string[] args)
        {
            Program      program      = new Program();
            SomeDelegate someDelegate = new SomeDelegate(program.WriteMySomething);

            program.SomeEvent += someDelegate;
            program.SomeEvent?.Invoke();
            Console.ReadKey();
        }
示例#6
0
        static void Main(string[] args)
        {
            //Delegate是个类,有个无参的构造函数,但是为private类型,所以new必须传参
            SomeDelegate s = new SomeDelegate(Hello) + new SomeDelegate(Wow) + new SomeDelegate(Haha);
            s("Tom");

            Console.WriteLine("===========");
            s -= Hello;
            s("Jerry");
        }
示例#7
0
 void M <SomeTypeParameter>(
     SomeClass a,
     SomeStruct b,
     SomeRecord c,
     SomeEnum d,
     SomeInterface e,
     SomeDelegate f,
     SomeTypeParameter g)
 {
 }
示例#8
0
    void UseAnonymousExpression()
    {
        // un named function assigned to SomeDelegate();
        SomeDelegate del = () => Debug.Log("Anonymous Expression called.");

        del += NamedExpression;
        del.Invoke();
        // Anonymous Expression called.
        // Named Expression called.
    }
 public Calculator(IDbConnection connection, IDataAdapter adapter, DateTime current_date, DateTime end_date,
                   SomeDelegate some_delegate)
 {
     this.connection       = connection;
     this.adapter          = adapter;
     this.current_date     = current_date;
     this.end_date         = end_date;
     this.some_delegate    = some_delegate;
     this.date_on_property = DateTime.MaxValue;
 }
        private void Start()
        {
            SomeDelegate
            a = delegate(int i) { Debug.Log($"A({i})が呼ばれました"); };

            a += i => Debug.Log($"B({i})が呼ばれました");

            a(256);

            Increments();
        }
        public void SetUp()
        {
            myFirst      = MockRepository.GenerateStub <IMyFirst>();
            someDelegate = () => { };

            var defaultServiceProvider = new DefaultServiceProvider();

            defaultServiceProvider.Register(x => myFirst);
            defaultServiceProvider.Register(x => someDelegate);
            defaultServiceProvider.Register <IMySecond>(x => new MySecond(x.Resolve <IMyFirst>()));

            serviceProvider = defaultServiceProvider;
        }
        public void SetUp()
        {
            myFirst = MockRepository.GenerateStub<IMyFirst>();
            someDelegate = () => { };

            var defaultServiceProvider = new DefaultServiceProvider();

            defaultServiceProvider.Register(x => myFirst);
            defaultServiceProvider.Register(x => someDelegate);
            defaultServiceProvider.Register<IMySecond>(x => new MySecond(x.Resolve<IMyFirst>()));

            serviceProvider = defaultServiceProvider;
        }
示例#13
0
        public DefaultServiceProviderTests()
        {
            myFirst      = Substitute.For <IMyFirst>();
            someDelegate = () => { };

            var defaultServiceProvider = new DefaultServiceProvider();

            defaultServiceProvider.Register(x => myFirst);
            defaultServiceProvider.Register(x => someDelegate);
            defaultServiceProvider.Register <IMySecond>(x => new MySecond(x.Resolve <IMyFirst>()));

            serviceProvider = defaultServiceProvider;
        }
示例#14
0
        static void Main(string[] args)
        {
            SomeDelegate sd = SquareNumber; // Create delegate instance

            Console.WriteLine("Before SquareNumber Method Invoke");
            IAsyncResult asyncRes = sd.BeginInvoke(10, null, null);

            Console.WriteLine("Back to Main Method");
            int res = sd.EndInvoke(asyncRes);

            Console.WriteLine(res);
            Console.ReadLine();
        }
示例#15
0
        static void Main(string[] args)
        {
            SomeDelegate sd = SquareNumber; // Создаем делегат

            Console.WriteLine("Перед вызовом SquareNumber");
            IAsyncResult asyncRes = sd.BeginInvoke(10, null, null);

            Console.WriteLine("Возвращаемcя в главный метод");
            int res = sd.EndInvoke(asyncRes);

            Console.WriteLine(res);
            Console.ReadLine();
        }
示例#16
0
        // Regular method that matches signature:

        void SourceMethod()
        {
            // Instantiate delegate with named method:
            SomeDelegate d1 = Target.SampleDelegateMethod;
            // Instantiate delegate with anonymous method:
            SomeDelegate d2 = delegate(string message) {
                Console.WriteLine(message);
            };

            // Invoke delegate d1:
            d1("Hello");
            // Invoke delegate d2:
            d2(" World");
        }
示例#17
0
        public static void Main()
        {
            SomeDelegate d1 = Method;

            d1.BeginInvoke(null, null);

            OtherDelegate d2 = Method;

            d2.EndInvoke(null);

            StrippedDelegate d3 = Method;

            d3.DynamicInvoke(null);
        }
示例#18
0
        public void VerifyAddRemoveEventHandler8()
        {
            EventInfo ei = GetEventInfo(typeof(BaseClass), "EventPublic");

            Assert.NotNull(ei);
            EventHandler myhandler = new EventHandler(MyEventHandler);
            BaseClass    obj       = new BaseClass();
            SomeDelegate d1        = new SomeDelegate(SomeHandler);

            //Handler is not correct.
            Assert.Throws <ArgumentException>(() =>
            {
                ei.AddEventHandler(obj, d1);
            });
        }
示例#19
0
        private static void RunDelegate()
        {
            // 委派:可以將工作加入到某個等待被執行的委派當中,如下程式碼,在SomeDelegate method 代表method是一個委派可以加入相同參數的方法,
            // 如程式碼中的Method1、Method2、Method3,都是丟給method來執行。
            Console.WriteLine("委派:可以將工作加入到某個等待被執行的委派當中,如下程式碼,在SomeDelegate method 代表method是一個委派可以加入相同參數的方法,如程式碼中的Method1、Method2、Method3,都是丟給method來執行。");
            Console.WriteLine("Start (4) Run Delegate method");

            SomeDelegate method = Method1;

            method += Method2;
            method += Method3;
            method.Invoke("HI");

            Console.WriteLine("Done. 請按任意鍵繼續");
            Console.ReadLine();
        }
示例#20
0
    public void Run(SomeDelegate a)
    {
        int row = 1;
        for (int i = 0; i <= this.total; i++)
        {
            Console.SetCursorPosition(0, 0);
            Console.Write(i);

            if (i!=0 && i%this.interval ==0)
            {
                Console.SetCursorPosition(0, row);
                a();
                row++;
            }
            Thread.Sleep(1000);
        }
    }
示例#21
0
        public void InvokeMethod()
        {
            SomeDelegate del = delegate
            {
                Console.WriteLine("Hello");
            };


            del("\nParameter is ignored"); // this parameter is ignored  at run time

            SomeDelegate delP = delegate(string s)
            {
                Console.WriteLine(s);
            };

            delP("\nParameter is passed");
        }
示例#22
0
        private static void NeverCalled()
        {
            SomeDelegate dlgt    = null;
            SuperStruct  structi = Nonsense(dlgt, true);

            Console.WriteLine(structi.Deep);
            ISomeDeep deep = null;

            Console.WriteLine(deep.Name);
            structi.Crap();
            Console.WriteLine(typeof(SuperStruct).Assembly.FullName);
            deep.OnMouseExploding += Deep_OnMouseExploding;

            var myFun = GetMySpecialMeth <SomeDelegate, ISomeDeep>(false, null, 0);

            Console.WriteLine(myFun);

            var mySun = GetMySpecialMeth <ISet <ISomeDeep> >(true, 1);

            Console.WriteLine(mySun);

            var myCan = GetMySpecialMeth <SomeDelegate[], ISomeDeep>(false, null, 2);

            Console.WriteLine(myCan);

            IDictionary <string, SomeDelegate> dict = new Dictionary <string, SomeDelegate>();

            Console.WriteLine(dict["hello"]);

            ISet <ISomeDeep> set = new HashSet <ISomeDeep>();

            Console.WriteLine(set.Add(null));

            IList <SuperStruct> list = new List <SuperStruct>();

            Console.WriteLine(list[1]);

            SomeDelegate[] delgts = new SomeDelegate[12];
            Console.WriteLine(delgts[3]);

            SomeDelegate[,] delgts2 = new SomeDelegate[12, 45];
            Console.WriteLine(delgts2[3, 1]);

            SomeDelegate[,,] delgts3 = new SomeDelegate[12, 45, 78];
            Console.WriteLine(delgts3[3, 1, 2]);
        }
示例#23
0
        private void MathGraph(SomeDelegate funct)
        {
            double a    = double.Parse(textBox1.Text);
            double b    = double.Parse(textBox2.Text);
            double step = 0.1;

            //!!!!!! Использует chart для вывода функции

            chart1.ChartAreas[0].AxisX.ScaleView.Zoom(a, b);
            chart1.ChartAreas[0].CursorX.IsUserEnabled              = true;
            chart1.ChartAreas[0].CursorX.IsUserSelectionEnabled     = true;
            chart1.ChartAreas[0].AxisX.ScaleView.Zoomable           = true;
            chart1.ChartAreas[0].AxisX.ScrollBar.IsPositionedInside = true;


            for (double i = a; i <= b; i += step)
            {
                chart1.Series[0].Points.AddXY(i, funct(i));
            }
        }
示例#24
0
        public void GetExportsImportDefinitionForDelegateReturningProperty(IContainer container)
        {
            var exportProvider = GetMefV1Container(container);

            SomeDelegate del = exportProvider.GetExportedValue <SomeDelegate>();

            Assert.Null(del(null, null));

            var importDefinition = new MefV1.Primitives.ContractBasedImportDefinition(
                MefV1.AttributedModelServices.GetTypeIdentity(typeof(SomeDelegate)),
                MefV1.AttributedModelServices.GetTypeIdentity(typeof(SomeDelegate)),
                new KeyValuePair <string, Type> [0],
                MefV1.Primitives.ImportCardinality.ZeroOrMore,
                false,
                true,
                MefV1.CreationPolicy.Any);

            var results = exportProvider.GetExports(importDefinition).ToArray();

            Assert.Equal(1, results.Length);
            Assert.IsAssignableFrom(typeof(SomeDelegate), results[0].Value);
        }
        /// <summary>
        /// Осуществляет обход дерева и делает с узлами то, что передано в качестве делегата
        /// с сигнатурой void Node
        /// </summary>
        /// <param name="whatToDoWithNode">делегат с сигнатурой void Node</param>
        public void TreeTraversal(SomeDelegate whatToDoWithNode)
        {
            Node <T> currentNode = this.root;
            Node <T> nextLevel   = root.LeftChild;

            // пока есть что печатать
            while (currentNode != null)
            {
                // печатаем
                whatToDoWithNode(currentNode);
                // если существует правый брат, то переходим на него и повторяем цикл
                if (currentNode.RightBrother != null)
                {
                    currentNode = currentNode.RightBrother;
                    continue;
                }
                // если правого брата нет, то переходим на следующий уровень
                currentNode = nextLevel;
                // находим следующий уровень для nexLevel
                if (nextLevel != null)
                {
                    if (nextLevel.RightBrother == null)
                    {
                        nextLevel = null;
                        continue;
                    }
                    while (nextLevel.RightBrother != null)
                    {
                        nextLevel = nextLevel.RightBrother;
                        if (nextLevel.LeftChild != null)
                        {
                            nextLevel = nextLevel.LeftChild;
                            break;
                        }
                    }
                }
            }
        }
示例#26
0
        private void button1_MouseClick(object sender, MouseEventArgs e)
        {
            SomeDelegate funct1 = new SomeDelegate(Math.Sin);
            SomeDelegate funct2 = new SomeDelegate(x2);//передача синуса в делегат

            //имя функции,которую выбрал пользователь
            string func_name = comboBox1.Text;

            switch (func_name)
            {
            case "sin":
                MathGraph(funct1);
                break;

            case "x^2":
                MathGraph(funct2);
                break;

            default:
                MathGraph(funct1);
                break;
            }
        }
示例#27
0
        static void Main(string[] args)
        {
            SomeDelegate a = new SomeDelegate(A);

            a(256);
        }
示例#28
0
    // Use this for initialization
    void Start()
    {
        SomeDelegate a = DoSomething;

        a(256);
    }
示例#29
0
文件: Program.cs 项目: jacoloves/lab
 static void Main()
 {
     SomeDelegate a = A;
     a(256);
 }
 public Delegates(SomeDelegate _delegate)
 {
     Delegate = _delegate;
 }
示例#31
0
 public virtual async Task <int> MethodWithDelegate(string something, SomeDelegate d)
 {
     return(await Task.FromResult(1));
 }
示例#32
0
文件: test.cs 项目: mono/gert
	public BaseClass (SomeDelegate d)
	{
		d ();
	}
示例#33
0
        static void Main()
        {
            SomeDelegate del = null;


            SomeDelegate staticDelegate = new SomeDelegate(SomeClass.SomeStaticMethod);

            staticDelegate("Привет Мир!");

            SomeClass someObj = new SomeClass();

            staticDelegate += someObj.SomeInstanceMethod;;
            staticDelegate("Мир Привет!");

            staticDelegate += SomeClass.SomeStaticMethod;

            del += SomeClass.SomeStaticMethod;
            del += someObj.SomeInstanceMethod;
            foreach (SomeDelegate item in del.GetInvocationList())
            {
                item("Привет Мир!");
            }

            SomeDelegate someDelegate = delegate(String arg)
            {
                Console.WriteLine(arg);
            };

            someDelegate("ChupaChups");

            Console.ReadKey();

            string login = "******", password1 = "E=mc^2", password2 = "E=mc^2", resCapcha = "asd", resCode = "asd1";


            LengthLogin ll        = ss => ss.Length;
            int         longlogin = ll(login);


            BoolPassword bp = (s1, s2) => s1 == s2;

            if (bp(password1, password2)) //Checking password
            {
                Console.WriteLine("Регистрация удалась!");
            }
            else
            {
                Console.WriteLine("Регистрация провалилась. Пароли не совпадают");
            }

            Console.ReadKey();

            Capcha cp = (s1, s2) =>
            {
                if (s1 == s2)
                {
                    Console.WriteLine("Регистрация удалась!");
                }
                else
                {
                    Console.WriteLine("Не переживай, в следующий раз получится :)");
                }
                return;
            };

            cp(resCapcha, resCode);//Checking capcha

            Console.ReadKey();
        }
示例#34
0
 static extern SuperStruct Nonsense(SomeDelegate proc, bool shit);
示例#35
0
		private void get_stability_btn_Click(object sender, EventArgs e)
		{
			
			//デリゲートの実装
			SomeDelegate some = new SomeDelegate(delegate {
				bool result = false;
				if (LaserPreheat()) {
					result = true;
				} else {
					result = false;
				}

				if (getStability()) {
					result = true;
				} else {
					_isErrorOperation = true;
					result = false;
				}

				return result;
			});

			//AsyncCallbackデリゲート
			AsyncCallback callback = new AsyncCallback(some_Completed);

			//第一引数にコールバックメソッドを指定
			IAsyncResult ar = some.BeginInvoke(callback, null);

			//処理の終了監視用タイマー始動
			operationChecker_tim.Enabled = true;

			//プログレスバーのスタート
			stab_prb.Visible = true;
			startStabProgress();

			//ボタンの入力禁止
			AllButtonDisable();

            //温度チェックの停止とファンの停止
            TempAndFanControl(false);

			log_tbx.Text = "安定性測定中";
			log_tbx.Refresh();
        }
示例#36
0
        public void VerifyAddRemoveEventHandler9()
        {
            EventInfo ei = GetEventInfo(typeof(BaseClass), "EventPublic");
            Assert.NotNull(ei);
            EventHandler myhandler = new EventHandler(MyEventHandler);
            BaseClass obj = new BaseClass();
            ei.AddEventHandler(obj, myhandler);
            SomeDelegate d1 = new SomeDelegate(SomeHandler);

            //Handler is not correct.          
            // Win8P throws generic Exception         
            Assert.Throws<ArgumentException>(() =>
            {
                ei.RemoveEventHandler(obj, d1);
            });
        }
示例#37
0
 public BaseClass(SomeDelegate d)
 {
     d();
 }
        public void DelegateTest()
        {
            SomeDelegate method = new SomeDelegate(TestDelegateMethod);

            method.Invoke(3);
        }