TaW сказал в этот комментарий :
Вы можете вызвать Refresh () перед началом длительной работы.
blockquote>Refresh () был именно тем, что мне было нужно!
На основе
кажется, что на скомпилированной форме существует атрибут. Поэтому посмотрите, имеет ли метод этот атрибут:
http://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.extensionattribute.aspx
Можно назвать метод IsDefined на экземпляре MethodInfo для обнаружения этого путем проверки, чтобы видеть, применяется ли ExtensionAttribute к методу:
bool isExtension=someMethod.IsDefined(typeof(ExtensionAttribute),true);
Это выглядит очень похожим на более ранний вопрос, мог бы быть достойный внимания. Предложение там должно было искать классы и методы с ExtensionAttribute, который походит на то, что Вы после.
Если Вы знаете, что получаете a MethodInfo
от экземпляра можно легко проверить, является ли метод статическим. Дополнительные методы являются просто синтаксическим сахаром и преобразовываются в передачу вызовов статического метода в экземпляре.
Разве компилятор не переключает все дополнительные методы в вызовы статического метода во время компиляции?
myList.First();
становится
Enumerable.First(myList);
Если это верно, затем нет никаких дополнительных методов во времени выполнения .NET (где Вы отражаетесь).