Ответ 1
Вам нужно указать BindingFlags. Public и BindingFlags. FlattenHierarchy в дополнение к BindingFlags. Статический:
MethodInfo inf = typeof(Video).GetMethod("NewItem",
BindingFlags.Static | BindingFlags.Public | BindingFlags.FlattenHierarchy);
В качестве альтернативы вы можете получить метод из объявляющего типа без BindingFlags. FlattenHierarchy:
MethodInfo inf = typeof(Item<Video>).GetMethod("NewItem",
BindingFlags.Static | BindingFlags.Public);
Я пробовал в обоих направлениях, и они оба работают.