当前位置: 移动技术网 > IT编程>开发语言>c# > event demo

event demo

2019年11月24日  | 移动技术网IT编程  | 我要评论
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.threading.tasks;
using system.diagnostics;

namespace consoleapp392
{
    class program
    {
        static void main(string[] args)
        {
            adult adult = new adult(18);
            adult.adultevent += adult_adultevent;
            adult.age = 20;
            console.readline();
        }

        private static void adult_adultevent(object sender, adultargs e)
        {
            string msg = string.empty;
            int newage = e.adultage;
            if(newage>=18)
            {
                msg = "adult";
            }
            else
            {
                msg = "adolescent";
            }
            console.writeline($"the newly updated age is {newage} and it's {msg} ");
        }
    }        

    public class adultargs
    {
        public int adultage { get; set; }
        public adultargs(int age)
        {
            adultage = age;
        }
    }

    public class adult
    {
        public event eventhandler<adultargs> adultevent;

        public adult(int adultage)
        {
            age = adultage;
        }

        private int agevalue;
        public int age
        {
            get
            {
                return agevalue;
            }
            set
            {
                if(value!=agevalue)
                {
                    agevalue = value;
                    raisepropertychanged(value);
                }
            }
        }

        private void raisepropertychanged(int value)
        {
            adultevent?.invoke(this, new adultargs(value));
        }
    }

}

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网