Я пишу небольшую программу, которая читает файл заголовка с дискеты, а затем выводит содержимое файла заголовка в таблицу таблицы данных. Я хотел бы, чтобы эта таблица сетки данных добавляла новую строку в сетку данных каждый раз, когда загружается новая дискета.
В настоящее время мой код будет читать дискету и выводить нужные данные в сетку данных. Однако каждый раз, когда я вставляю новую дискету и нажимаю кнопку «Загрузить», она просто перезаписывает данные, уже находящиеся в таблице, данными с новой дискеты. Я хочу, чтобы он сохранил данные в таблице и добавил новую строку для отображения данных с новой дискеты.
Я подозреваю, что я создаю новую таблицу каждый раз, когда пу sh загружаю ", а затем просто заполняя таблицу текущими данными. Я просто не знаю, как этого не делать ...
Вот что я делаю:
Это часть .xaml, где я создал сетку данных:
<DataGrid Name="TableData" AutogenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header = "Seq #" Binding="{Binding SeqNum}"></DataGridTextColumn>
<DataGridTextColumn Header = "Disk Num" Binding="{Binding HdrDisk}"></DataGridTextColumn>
<DataGridTextColumn Header = "Date/Time" Binding="{Binding HdrDTG}"></DataGridTextColumn>
<DataGridTextColumn Header = "File Size" Binding="{Binding fileSize}"></DataGridTextColumn>
<DataGridTextColumn Header = "# of Disks" Binding="{Binding TotalDisk}"></DataGridTextColumn>
</DataGrid.Clumns>
Здесь я создаю класс для привязки данных:
public class TableDataClass
{
public int HdrDisk {get;set;}
public string HdrDTG {get;set;}
public int TotalDisk {get;set;}
public int SeqNum {get;set;}
public in fileSize {get;set;}
}
И здесь я выполняю загрузку с дискеты, обрабатываю данные и выводлю в сетку данных.
private void loadFromFloppy(object sender, RoutedEventArgs e)
{
// A bunch of stuff that I do to process reading in the floppy
// ..
// ..
// ..
// disknum, asciistring, totDiskNum, seqNumCount, fileSizeTemp are all properly
// calculated and filled in this part.
// ..
// ..
//Output Data to Data Grid Table
List<TableDataClass> tableData = new List<TableDataClass>();
tableData.Add(new TableDataClass()
{
HdrDisk =disknum,
HDRDTG = asciiString,
TotalDisk = totDiskNum,
SeqNum = seqNumCount,
fileSize = fileSizeTemp
});
TableData.ItemsSource = tableData;
}