namespace WpfApp2.model
{
public class Spares
{
public string name { get; set; }
public int price { get; set; }
public string detail { get; set; }
public string type { get; set; }
public List<SparesDetail> SparesDetailList { get; set; }
public List<SparesPrice> SparesPriceList { get; set; }
public List<SparesType> SparesTypeList { get; set; }
}
}
namespace WpfApp2.model
{
class Globals
{
public static IDataProvider dataProvider;
}
}
namespace WpfApp2.model
{
public class SparesDetail
{
public string title { get; set; }
}
public class SparesPrice
{
public string title { get; set; }
public int PriceFrom { get; set; }
public int PriceTo { get; set; }
}
public class SparesType
{
public string title { get; set; }
}
}
Добавил пару строчек для отображения информации
<DataGridTextColumn
Header="Дата завоза"
Binding="{Binding date,StringFormat='dd.MM.yyyy'}"/>
<DataGridTextColumn
Header="Наличие"
Binding="{Binding available}"/>
прописал csv
public MainWindow()
{
InitializeComponent();
DataContext = this;
Globals.dataProvider = new LocalDataProvider();
SparesList = Globals.dataProvider.getSpares();
SparesDetailList = Globals.dataProvider.getDetail().ToList();
SparesDetailList.Insert(0, new SparesDetail { title = "Деталь" });
SparesPriceList = Globals.dataProvider.getPrice().ToList();
SparesTypeList = Globals.dataProvider.getType().ToList();
SparesTypeList.Insert(0, new SparesType { title = "Тип ТС" });
Globals.dataProvider = new CSVDataProvider();
SparesList = Globals.dataProvider.getSpares();
}
private bool sortAsc = true;
private void RadioButton_Checked(object sender, RoutedEventArgs e)
{
sortAsc = (sender as RadioButton).Tag.ToString() == "1";
Invalidate();
}
using System;
using System.Collections.Generic;
using System.Formats.Asn1;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CsvHelper;
using WpfApp2;
namespace WpfApp2.model
{
public class CSVDataProvider : LocalDataProvider, IDataProvider
{
private List<Spares> SparesList;
// конструктор класса
public CSVDataProvider()
{
using (var reader = new StreamReader("./data.csv"))
{
using (var csv = new CsvReader(
reader,
CultureInfo.InvariantCulture))
{
// CsvHelper использует отложенное чтение через
// yeld, поэтому сразу преобразуем в список
SparesList = csv.GetRecords<Spares>().ToList();
}
}
}
public IEnumerable<Spares> getSpares()
{
return SparesList;
}
}
}