Пример #1
0
        public void LeaveEvent(string objectKey, string eventName, object executer)
        {
            if (_ComponentDebugger.Stopping)
            {
                return;
            }
            EventAction ea = _ComponentDebugger.RootClass.GetEventHandler(eventName, objectKey);

            if (ea != null)
            {
                int           threadId = System.Threading.Thread.CurrentThread.ManagedThreadId;
                EnumRunStatus status   = _ComponentDebugger.GetRunStatus(threadId);
                if ((status != EnumRunStatus.Stop && status != EnumRunStatus.Run) || ea.BreakAfterExecute)
                {
                    _ComponentDebugger.SetSelectedObject(executer);
                    _ComponentDebugger.SetAtBreak(threadId, true);
                    _debugUI.ShowBreakPoint(_ComponentDebugger);
                    _ComponentDebugger.ShowEventBreakPointInTreeView(objectKey, eventName, executer, false);
                    waitForBreakPoint(threadId);
                }
            }
            _ComponentDebugger.ClearBreakpointDisplay();
            _ComponentDebugger.LeaveEvent();
            FormDebugger f = _ComponentDebugger.FindForm() as FormDebugger;

            if (f != null)
            {
                f.setButtonImages();
            }
        }