Я пытаюсь отформатировать столбец «Скорость», чтобы он отображался как десятичная единица в сетке данных, которая собирает данные из текстового файла, но i Мне не повезло. вот код я пытаюсь использовать:C# Пытается форматировать данные datagridview и передавать обратно через цикл после форматирования
while ((r.Peek() != -1))
{
string timeS = "";
string speedS = "";
string delimeter = "\t";
string[] Time1;
allData = r.ReadLine();
timeS = Dtime.ToString();
Time1 = timeS.Split(' ');
timeS = Time1[1];
string[] rows = allData.Split("\r".ToArray());
foreach (string row in rows)
{
var items = new List<string> { timeS };
items.AddRange(row.Split(delimeter.ToArray()));
dataset.Tables[tableName].Rows.Add(items.ToArray());
speed = Convert.ToDouble(items[2]);
speed = speed/10;
items[2] = speed.ToString();
Dtime = Dtime.AddSeconds(inter);
}
this.dataGridView1.DataSource = dataset.Tables[0].DefaultView;
}
Правильных данные собираются на «скорость», но не корректно отображается в сетке и, кажется, просто получить перезаписано вместо преобразования нужного столбца. Данные отображаются следующим образом: 15:46:20 91 154 70 309 83 6451 .. Столбец с данными '154' должен отображаться как '15 .4 '. Ура!
Я думал, что 'ToArray' собирается создать копию, но я не удивлюсь, если бы и' Add' тоже сделал. – juharr
О, да, я уверен, вы правы, что 'ToArray()' создает копию ... не думал об этом. –
Это действительно сработало, Cheers Grant, всегда простые вещи! – Ben