public bool init_config(bool _bDisplayProgressBar = true) { bool isInitSuccess = false; m_is_init = true; m_leadingedge = 0; m_sidetoside = 0; m_imagedensity = 0; m_lowhumiditymode = 0; m_platecontrolmode = 2; m_primarycoolingmode = 0; StringBuilder fw_version = new StringBuilder(128); UserCfgRecord m_rec = null; AsyncWorker worker = new AsyncWorker(Application.Current.MainWindow); string strPrinterName = ((MainWindow)App.Current.MainWindow).statusPanelPage.m_selectedPrinter; // dll.GetFWInfo(strPrinterName, fw_version); if (_bDisplayProgressBar) { worker.InvokeMethod <UserCfgRecord>(strPrinterName, ref m_rec, DllMethodType.GetUserConfig, this); } else { m_rec = worker.GetUserCfg(strPrinterName); } if (null != m_rec && m_rec.CmdResult == EnumCmdResult._ACK) { m_leadingedge = m_rec.LeadingEdge; m_sidetoside = m_rec.SideToSide; m_imagedensity = m_rec.ImageDensity; m_lowhumiditymode = m_rec.LowHumidityMode; m_platecontrolmode = m_rec.PlateControlMode; m_primarycoolingmode = m_rec.PrimaryCoolingMode; isInitSuccess = true; } spinCtlEdge.Value = m_leadingedge; spinCtlSide2Side.Value = m_sidetoside; spinCtlDensity.Value = m_imagedensity; if (1 == m_lowhumiditymode) { chkHumidity.IsChecked = true; } else { chkHumidity.IsChecked = false; } if (0 == m_platecontrolmode) { chkPlateControlMode.IsChecked = true; } else { chkPlateControlMode.IsChecked = false; } if (1 == m_primarycoolingmode) { chkCoolingMode.IsChecked = true; } else { chkCoolingMode.IsChecked = false; } return(isInitSuccess); }