Не имеющий конструктора без параметров базовый класс (аргументов) не разрешает плодить наследников - C#

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

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

Здравствуйте, никак не могу понять, в чём проблема. Возникла необходимость переопределить аргументы для BackgroundWorker'а в DoWork, но при переопределении возникли трудности. Появилось две идентичных ошибки в разных строках: с очевидным я справился путём гугления (добавил параметр в наследуемый конструктор), а вот с последней ошибкой справиться не могу. Вот код:
    public class MyEvArgs : DoWorkEventArgs
    {
        public MyEvArgs(object argument, typename srv)
            : base(argument)
        {
            Serv = srv;
        }
        public object arg;
        public readonly typename Serv;
    }
Осталась ошибка в первой строке выложенного куска кода, т.е. он ругается на объявлении класса, на ИМЯ класса, сообщая об отсутствии конструктора с нулём параметров. Как с этим бороться?
'System.ComponentModel.DoWorkEventArgs' does not contain a constructor that takes 0 arguments   ...
Что парадоксально для меня, вот по сути идентичный кусок кода, и ошибка изначально одна и решается просто:
    public class baseclass1
    {
        public baseclass1(int i)
        { }
    }
    public class child1 : baseclass1 
    {
        child1(int i) : base(i)
        { }
    }

Решение задачи: «Не имеющий конструктора без параметров базовый класс (аргументов) не разрешает плодить наследников»

textual
Листинг программы
worker.RunWorkerAsync(argument, srv)
...
void DoWork(MyEvArgs e)
{
   typename srv = e.Serv;
   object arg = e.Arg;
}

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


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

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

5   голосов , оценка 4.2 из 5
Похожие ответы