protected void LoadStyle(DATA_SYNC eSync) { if (eSync == DATA_SYNC.DATA_CLIENT) { foreach (DataGridViewColumn col in dataGridClient.Columns) { String strConfig = CIniManager.G_IniReadValue(STYLE_SECTION, "CLIENT_COL" + Convert.ToString(col.Index), CONFIG_FILE); if (strConfig.CompareTo("") == 0) { col.Width = 100; } else { col.Width = Convert.ToInt32(strConfig); } } } else if (eSync == DATA_SYNC.DATA_SERVER) { foreach (DataGridViewColumn col in dataGridServer.Columns) { String strConfig = CIniManager.G_IniReadValue(STYLE_SECTION, "SERVER_COL" + Convert.ToString(col.Index), CONFIG_FILE); if (strConfig.CompareTo("") == 0) { col.Width = 100; } else { col.Width = Convert.ToInt32(strConfig); } } } }
public Boolean LoadData(DATA_SYNC eSync, DATA_TYPE eType, String filename) { // StreamReader로 파일을 로드하는 부분은 예외를 처리하도록 한다. try { if (eSync == DATA_SYNC.DATA_CLIENT) { // 텍스트 파일을 Default Encoding(ANSI)로 StreamReader로 불러들인다. using (StreamReader sr = new StreamReader(filename, Encoding.Unicode)) { String line; while ((line = sr.ReadLine()) != null) { switch (eType) { case DATA_TYPE.DATA_TYPE_DEF: ParseDef(ref m_tblClient, line); break; case DATA_TYPE.DATA_TYPE_ALARM: ParseAlarmType(ref m_tblClient, line); break; case DATA_TYPE.DATA_TYPE_KOR: ParseKorData(ref m_tblClient, line); break; case DATA_TYPE.DATA_TYPE_JPN: ParseJpnData(ref m_tblClient, line); break; case DATA_TYPE.DATA_TYPE_USER: { String strNote = sr.ReadLine(); ParseUserData(ref m_tblClient, line, strNote); break; } } } sr.Close(); } } else if (eSync == DATA_SYNC.DATA_SERVER) { // 텍스트 파일을 Default Encoding(ANSI)로 StreamReader로 불러들인다. using (StreamReader sr = new StreamReader(filename, Encoding.Unicode)) { String line; while ((line = sr.ReadLine()) != null) { switch (eType) { case DATA_TYPE.DATA_TYPE_DEF: ParseDef(ref m_tblServer, line); break; case DATA_TYPE.DATA_TYPE_ALARM: ParseAlarmType(ref m_tblServer, line); break; case DATA_TYPE.DATA_TYPE_KOR: ParseKorData(ref m_tblServer, line); break; case DATA_TYPE.DATA_TYPE_JPN: ParseJpnData(ref m_tblServer, line); break; case DATA_TYPE.DATA_TYPE_USER: { String strNote = sr.ReadLine(); ParseUserData(ref m_tblServer, line, strNote); break; } } } sr.Close(); } } else { } } catch (System.Exception e) { AddLog((int)Babidi.eLogType.eLOGTYPE_FILE, e.Source, e.Message); return(false); } return(true); }
/// <summary> /// TABLE에 데이타를 만든다. /// </summary> /// <param name="gridControl">DATA의 컨트롤</param> /// <param name="table">Data Table</param> /// <param name="strDef">정의 파일</param> /// <param name="strAlarm">메시지 타입 파일</param> /// <param name="strKor">KOR 파일</param> /// <param name="strJpn">JPN 파일</param> /// <param name="strUser">유저 노트</param> /// <param name="eSync">클라이언트냐 서버냐</param> public void CreateData(ref DataGridView gridControl, ref DataTable table, String strDef, String strAlarm, String strKor, String strJpn, String strUser, DATA_SYNC eSync) { if (eSync == DATA_SYNC.DATA_CLIENT) { table = new DataTable(CLIENT_TABLE); } else if (eSync == DATA_SYNC.DATA_SERVER) { table = new DataTable(SERVER_TABLE); } DataView dataView = new DataView(table); dataView.ApplyDefaultSort = false; // Data View를 Data Grid Control 에 연결한다. gridControl.DataSource = dataView; // ID Column 추가 DataColumn col = new DataColumn(COL_ID, typeof(System.Int32)); col.AutoIncrement = true; col.ReadOnly = true; col.Caption = "이 ID는 UNIQUE한 숫자로서 STRING의 선언 번호 (순서) 를 나타냅니다."; table.Columns.Add(col); // DEFINE Column 추가 col = new DataColumn(COL_DEFINE, typeof(System.String)); col.ReadOnly = true; col.Unique = true; table.Columns.Add(col); col = new DataColumn(COL_COMMENT, typeof(System.String)); col.ReadOnly = true; table.Columns.Add(col); col = new DataColumn(COL_KOR, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_JPN, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_ALARMTYPE, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_NOTE, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_MB, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_HTML, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_LINELENGTH, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_STATE, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_SORT_STRING, typeof(System.String)); table.Columns.Add(col); col = new DataColumn(COL_SORT_INT, typeof(System.Int32)); table.Columns.Add(col); // Table에 Primary Key를 잡아준다. table.PrimaryKey = new DataColumn[] { table.Columns[COL_DEFINE] }; if (eSync == DATA_SYNC.DATA_CLIENT) { m_strClientDef = strDef; m_strClientAlarm = strAlarm; m_strClientKor = strKor; m_strClientJpn = strJpn; m_strClientUser = strUser; } else { m_strServerDef = strDef; m_strServerAlarm = strAlarm; m_strServerKor = strKor; m_strServerJpn = strJpn; m_strServerUser = strUser; } LoadData(eSync, DATA_TYPE.DATA_TYPE_DEF, strDef); LoadData(eSync, DATA_TYPE.DATA_TYPE_ALARM, strAlarm); LoadData(eSync, DATA_TYPE.DATA_TYPE_KOR, strKor); LoadData(eSync, DATA_TYPE.DATA_TYPE_JPN, strJpn); LoadData(eSync, DATA_TYPE.DATA_TYPE_USER, strUser); CreateDefaultDataType(ref table); // Data를 체크한다. CheckDataState(ref table); // 자동 정렬이 되지 않도록 한다 foreach (DataGridViewColumn column in gridControl.Columns) { column.SortMode = DataGridViewColumnSortMode.NotSortable; } gridControl.Columns[COL_SORT_STRING].Visible = false; gridControl.Columns[COL_SORT_INT].Visible = false; }