// 쿼리 불러오기 public void Do_Query(string query) { db.Open(); try { db.Query(query); } catch (Exception ex) { MessageBox.Show(query + "\n\n" + ex.Message, "SQL Error"); } int r = 0; // 행의 개수를 알기 위함 DataTable dataTable = new DataTable(); if (db.HasRows) { dataTable.Columns.Add("상태"); dataTable.Columns.Add("학번"); dataTable.Columns.Add("이름"); while (db.Read()) { for (int i = 0; i < db.FieldCount; i++) { list.Add(db.GetData(i).ToString()); } r++; } } for (int i = 0; i < r; i++) { bool removeFlag = false; // 재학 상태 변환 int insertPoint = 4 + i * 8; for (int j = 0; j < statusCode.Length; j++) { if (statusCode[j].ToString().Equals(list.ElementAt(insertPoint))) { list.Insert(insertPoint, statusName[j]); removeFlag = true; } } if (removeFlag) { list.RemoveAt(insertPoint + 1); } string[] need = { list.ElementAt(4 + i * 8), list.ElementAt(0 + i * 8), list.ElementAt(1 + i * 8) }; dataTable.Rows.Add(need); } result.ColumnWidth = this.Width / db.FieldCount; // 그리드의 가로 폭 지정 result.RowHeight = result.Height / (r + 1); // 그리드의 세로 길이 지정 result.ItemsSource = dataTable.DefaultView; // 그리드와 테이블 연동 db.Close(); }
//---------------------------------------------- //---------------------------------------------- private void InitializeSetting() { db.Open(); string query학과 = "SELECT xDept_name FROM xDEPARTMENT GROUP BY xDept_name"; string err_msg학과 = db.Query(query학과); if (err_msg학과 != null) { MessageBox.Show(query학과 + "\n\n" + err_msg학과); } InitializeTable학과(); InitializeCombo상태(); db.Close(); }