Я вроде как поддержал себя в углу здесь.
У меня есть серия UserControls, которые наследуют от родителя, который содержит несколько методов и событий, чтобы упростить вещи, поэтому мне не нужно писать строки и строки почти идентичного кода. Как ты делаешь. Родитель не содержит других элементов управления.
Я хочу сделать только один обработчик событий в родительском UserControl, который идет и делает материал, который может выполнять только родительский элемент управления (то есть условное вызов события, как событие, определенное в родительском элементе). Затем я подключил этот обработчик событий ко всем моим полям ввода в своих дочерних элемента управления, а дочерние элементы управления разобрали бы задачу разбора ввода и указав родительскому элементу, следует ли это событие выкинуть. Хороший и чистый, не повторяющийся, код копирования-вставки (который для меня всегда приводит к ошибке).
Вот мой вопрос. Visual Studio думает, что я слишком умна наполовину и предупреждает меня, что "метод CheckReadiness" [обработчик событий в родительском] не может быть методом для события, потому что класс, из которого этот класс вытекает, уже определяет метод ". Да, Visual Studio, эта точка. Я хочу иметь обработчик событий, который обрабатывает только события, создаваемые дочерними классами, и его единственная работа - позволить мне подключать детей, не создавая ни одной строки кода. Мне не нужны эти дополнительные обработчики - вся необходимая мне функциональность естественно вызвана тем, что дети обрабатывают ввод пользователя.
Я не уверен, почему Visual Studio начала жаловаться на это сейчас (поскольку это позволяло мне делать это раньше), и я не уверен, как заставить его уйти. Предпочтительно, я хотел бы сделать это без необходимости определять метод, который просто вызывает CheckReadiness. Что вызывает это предупреждение, что заставляет его появляться сейчас, когда это было не час назад, и как я могу заставить его уйти, не прибегая к созданию маленьких обработчиков во всех дочерних классах?