Manchmal kann es z.B. passieren das Events sich gegenseitig auslösen und einen Stack Overflow auslösen. Durch Einfügen dieses Codes kann man prüfen ob der aktuelle Funktionsaufruf von der selben Funktion ausgelöst wurde.
var callStack = new StackTrace();
var currentMethod = MethodBase.GetCurrentMethod();
for (var i = 1; i < callStack.FrameCount; i++)
{
if (callStack.GetFrame(i).GetMethod()== currentMethod) return;
}
2 Kommentare zum Snippet