Не мога да разбера защо получавам изключение за този ред:
public void DoIt(object sender, MyEventArgs e) {
//... other stuff
Type type = sender.GetType();
if (type.GetMethod(e.ActionName, System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance) == null)
throw new NotSupportedException("Method: " + e.ActionName + " not implemented");
type.InvokeMember(e.ActionName, System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.InvokeMethod | System.Reflection.BindingFlags.Instance, null, sender, e.Parameters.ToArray());
}
Все още получавам грешка за това, че методът не е намерен, но аз съм сигурен, че е така, защото условието в if-statement преди да се позовава е невярно.
Отговори:
1 за отговор № 1Всъщност това е функцията за сигурност, Аз срещнах това по-рано в Silverlight - просто не мога отразяват частните членове на класа на тази платформа. Тъй като Windows Phone е доста подобен на Silverlight, убеден съм, че там съществуват еднакви ограничения.