public static bool FillOptions(CParametreLectureExcel parametre, string strFichierExemple) { CFormOptionsImportExcel1 form = new CFormOptionsImportExcel1(); form.m_parametre = parametre; form.m_strFichierExemple = strFichierExemple; DialogResult result = DialogResult.Retry; while (result == DialogResult.Retry) { result = form.ShowDialog(); if (result == DialogResult.OK) { result = CFormOptionsImportExcel2.FillOptions(parametre, strFichierExemple); } } form.Dispose(); return(result == DialogResult.OK); }
public static DialogResult FillOptions(CParametreLectureExcel parametre, string strFichierExemple) { CFormOptionsImportExcel2 form = new CFormOptionsImportExcel2(); form.m_parametre = parametre; string strTexteExemple = ""; if (strFichierExemple != "") { CLecteurFichierExcel reader = null; try { reader = new CLecteurFichierExcel(strFichierExemple, parametre.SheetName, parametre.PlageDonnees); form.m_tableExemple = reader.GetTable(parametre.NomChampsSurPremiereLigne); form.m_nomsCol = new Dictionary <int, string>(); //CREATION DU LISTVIEW form.m_wndListeExemple.Columns.Clear(); foreach (DataColumn col in form.m_tableExemple.Columns) { ColumnHeader header = new ColumnHeader(); header.Text = col.ColumnName; form.m_wndListeExemple.Columns.Add(header); } int nMaxRowsApercu = Math.Min(100, form.m_tableExemple.Rows.Count); // Limite l'affichage du liste view à 100 lignes for (int i = 0; i < nMaxRowsApercu; i++) { DataRow row = form.m_tableExemple.Rows[i]; ListViewItem item = new ListViewItem(row[0].ToString()); for (int n = 1; n < form.m_tableExemple.Columns.Count; n++) { item.SubItems.Add(row[n].ToString()); } form.m_wndListeExemple.Items.Add(item); } //CREATION DES COLONNES EXCEL DANS FICHIER PARAMETRAGE for (int nCol = 0; nCol < form.m_tableExemple.Columns.Count; nCol++) { CParametreLectureExcel.CColonneExcel col = form.m_parametre.GetColonne(nCol); if (col == null || col.Nom != form.m_tableExemple.Columns[nCol].ColumnName) { col = new CParametreLectureExcel.CColonneExcel(); col.Nom = form.m_tableExemple.Columns[nCol].ColumnName; col.DataType = typeof(string); form.m_parametre.SetColonne(nCol, col); } } reader.Close(); form.m_strTexteExemple = strTexteExemple; DialogResult result = form.ShowDialog(); form.Dispose(); return(result); } catch { } finally { try { reader.Close(); } catch { } } } return(DialogResult.Abort); }