private void openFile() { DataTable dx = new DataTable(); OpenFileDialog ofd = new OpenFileDialog(); if (Standard == 1) { ofd.Filter = "IEC|*.iec"; } else if (Standard == 2) { ofd.Filter = "NEC|*.nec"; } DataSet ds = new DataSet(); if (ofd.ShowDialog() == DialogResult.OK) { try { ds.ReadXml(ofd.FileName); dx = ds.Tables[0]; Form1.dtdiameter.Clear(); Form1.dtdiameter = ds.Tables[1]; int dxcolumn = dx.Columns.Count; int dxrow = dx.Rows.Count; string Input; dataGridView1.Rows.Clear(); //NOTE: ALL '.' and ',' still got changed, TODO: Change decimal separator replacing to only decimal data foreach (DataRow row in Form1.dtdiameter.Rows) { if (Form1.decimalseparator == ',') { for (int i = 0; i < Form1.dtdiameter.Columns.Count; i++) { row[i] = Convert.ToString(row[i]).Replace('.', ','); } } else { for (int i = 0; i < Form1.dtdiameter.Columns.Count; i++) { row[i] = Convert.ToString(row[i]).Replace(',', '.'); } } } for (int i = 0; i < dxrow; i++) { dataGridView1.RowCount++; for (int k = 0; k < dxcolumn; k++) { if ((k == 8) || ((k >= 10) && (k <= 16)) || ((k >= 18) && (k <= 24)) || ((k >= 26) && (k <= 37))) { if (Form1.decimalseparator == ',') { Input = Convert.ToString(dx.Rows[i].ItemArray[k]).Replace('.', ','); dataGridView1.Rows[i].Cells[k].Value = Input; } else { Input = Convert.ToString(dx.Rows[i].ItemArray[k]).Replace(',', '.'); dataGridView1.Rows[i].Cells[k].Value = Input; } } else { dataGridView1.Rows[i].Cells[k].Value = dx.Rows[i].ItemArray[k]; } } } Form1.j = dxrow - 1; savefile = ofd.FileName; if (Form1.OpenFromMain) { Form1.FileOpened = true; } else { Form1.FileOpened = false; } } catch (Exception ex) { Console.WriteLine(ex); } dataGridView1.ClearSelection(); if (Standard == 1) { f1.ChangeFormTitle(); } else if (Standard == 2) { f9.ChangeFormTitle(); } } }