Создание события в WinForm - C#

Узнай цену своей работы

Формулировка задачи:

подскажите, как создать своё собственное событие на WinForm(то есть событие которое не описано в дизайнере VS)?у текстбокса есть свойство textchanged а у listview нет.Вот как самому создать такое событие?

Решение задачи: «Создание события в WinForm»

textual
Листинг программы
//Класс  будет представлять из себя игральную кость, в классе будет единственный метод rnd, возвращающий случайное число от 1 до 6. Если этот метод возвратит 6, то сгенерируется событие max.
 
namespace test
{
    //Объявление делегата.
    public delegate void EventHandler();
    //Класс "Игральная кость".
    class MyDie
    {
        Random r;
        //Объвление события на основе делегата.
        public event EventHandler max;
        //Конструктор.
        public MyDie()
        {
            r=new Random();
        }
        //Объявление метода, в котором вызывается событие.
        public int rnd()
        {
            //Случаное число от 1 до 6.
            int res = r.Next(6)+1;
            if(res==6)
            {
                //Вызываем событие.
                max();
            }
            return res;
        }
    }
    //Класс для тестирования события.
    class Test
    {
        //Обработчик для события.
        public static void z()
        {
            Console.WriteLine("Вызов обработчика");
        }
        //Метод main.
        static void Main(string[] args)
        {
            //Создаем экземпляр события.
            MyDie w=new MyDie();
            //Добавление обработчика события.
            w.max+=new EventHandler(z);
            //Вызов метода, в котором вызывается событие.
            for(int k=0; k<10; k++)
            {
                Console.WriteLine("{0}", w.rnd());
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5