/* ============================================= * 공장 콤보박스를 선택했을경우 발생하는 이벤트 * =============================================== */ private void cboFactory_SelectedIndexChanged(object sender, EventArgs e) { try { if (cboFactory.SelectedIndex > 0) { // 공장리스트에서 공장타입번호가 같은것만 찾아서 공정 리스트를 호출 바인딩함 string facDivision = factory.Find(f => f.ID == cboFactory.SelectedValue.ToString()).CodeType; UtilClass.ComboBinding(cboWorker, new Service().GetWorker(Convert.ToInt32(facDivision)), "작업자 선택"); UtilClass.ComboBinding(cboLine, new Service().GetLineList(Convert.ToInt32(cboFactory.SelectedValue)), "공정 선택"); if (workerInfo != null) { cboLine.SelectedValue = workerInfo.LineID.ToString(); //cboLine.SelectedIndex = ((List<ComboItemVO>)cboLine.DataSource).FindIndex(k => k.ID == workerInfo.LineID.ToString()); workerInfo = null; } } else { List <ComboItemVO> list = null; UtilClass.ComboBinding(cboLine, list, string.Format(Properties.Resources.MsgChoice2, "공장")); UtilClass.ComboBinding(cboWorker, list, string.Format(Properties.Resources.MsgChoice2, "공장")); } } catch (Exception ex) { Program.Log.WriteError(ex.Message, ex); } }
// 연결(로그인) 선택시 private void btnConnect_Click(object sender, EventArgs e) { StringBuilder msg = new StringBuilder(); if (cboFactory.SelectedIndex < 1) { msg.AppendLine(string.Format(Properties.Resources.MsgChoice2, "공장")); } if (cboLine.SelectedIndex < 1) { msg.AppendLine(string.Format(Properties.Resources.MsgChoice2, "공정")); } if (cboWorker.SelectedIndex < 1) { msg.AppendLine(string.Format(Properties.Resources.MsgChoice1, "작업자")); } if (msg.Length > 1) { CustomMessageBox.ShowDialog("접속실패", msg.ToString(), MessageBoxIcon.Warning, MessageBoxButtons.OK); return; } // 유효성 검사(Login 성공시 => POPWorkInfo로 데이터를 담음) workerInfo = new WorkerInfoPOP { WorkID = Convert.ToInt32(cboWorker.SelectedValue), Worker = cboWorker.Text, LineID = Convert.ToInt32(cboLine.SelectedValue), LineName = cboLine.Text, FactoryID = cboFactory.SelectedValue.ToString(), FactoryName = cboFactory.Text }; // 로그인이 완료되면 메인 화면을 띄워주는 코드 PopMain Main = new PopMain(); Hide(); Main.WorkerInfo = workerInfo; // 로그아웃버튼을 누른 경우 // 폼을 다시 로드하는 효과를 줌. if (Main.ShowDialog() == DialogResult.OK) { InitData(); cboFactory.SelectedValue = Main.WorkerInfo.FactoryID; Show(); } // 종료 버튼을 누른 경우 // 로그인 화면도 닫음 else { Close(); } }