У меня есть два класса, MyClassA и MyClassB. MyClassB наследуется от MyClassA. Я написал метод со следующей подписью
public void DoSomething(MyGeneric<MyClassA> obj);
У меня также есть следующий обработчик событий.
public void MyEventHandler(Object source, EventArgs e)
{
//source is of type MyGeneric<MyClassB>
DoSomething((MyGeneric<MyClassA>)obj);
}
Я понимаю, что MyGeneric<MyClassA>
не относится к тому же типу MyGeneric<MyClassB>
, но, поскольку MyClassB является подклассом MyClassA, есть ли способ заставить эту работу работать?
Для справки, точное сообщение об ошибке:
Невозможно привести объект типа
'MSUA.GraphViewer.GraphControls.TreeNode 1[MSUA.GraphViewer.GraphControls.MaterialConfigControl]'
to type
'MSUA.GraphViewer.GraphControls.TreeNode
1 [MSUA.GraphViewer.PopulatableControl].