Я получил общий интерфейс вроде этого:
public interface IResourceDataType<T>
{
    void SetResourceValue(T resValue);
}
Затем я получил этот класс, который реализует мой интерфейс:
public class MyFont : IResourceDataType<System.Drawing.Font>
{
    //Ctor + SetResourceValue + ...
}
И наконец я получил:
var MyType = typeof(MyFont);
Теперь я хочу получить тип System.Drawing.Font из MyType!
На данный момент я получил этот код:
if (typeof(IResourceDataType).IsAssignableFrom(MyType))
{
    //If test is OK
}
Но мне не удается "извлечь" мой тип здесь...
Я пробовал пару вещей с помощью GetGenericArguments() и других вещей, но они либо не компилируют, либо возвращают нулевое значение /List...
Что мне делать?
ИЗМЕНИТЬ: Вот решение, которое соответствует моему коду тем, у кого будет такая же проблема:
if (typeof(IResourceDataType).IsAssignableFrom(MyType))
{
    foreach (Type type in MyType.GetInterfaces())
    {
        if (type.IsGenericType)
            Type genericType = type.GetGenericArguments()[0];
        }
    }
}
