private void ReloadTraceInfo() { if (currentTraceRecord != null) { IAdvancedTraceInfoProvider advancedTraceInfoProvider = TraceDetailInfoManager.GetInstance().GetAdvancedTraceInfoProvider(currentTraceRecord); Control advancedTraceInfoControl = advancedTraceInfoProvider.GetAdvancedTraceInfoControl(); if (advancedTraceInfoControl != null) { advancedTraceInfoControl.SuspendLayout(); try { advancedTraceInfoProvider.ReloadTrace(currentTraceRecord, new TraceDetailInfoControlParam(showBasicsMenuItem.Checked, showDiagMenuItem.Checked)); } catch (TraceViewerException ex) { throw ex; } finally { advancedTraceInfoControl.ResumeLayout(); } advancedTraceInfoControl.Dock = DockStyle.Fill; advancedInfoPanel.Controls.Add(advancedTraceInfoControl); } } }
public static TraceDetailInfoManager GetInstance() { lock (ObjectLock) { if (internalInstance == null) { internalInstance = new TraceDetailInfoManager(); } return(internalInstance); } }