开发者

C# Load CSV into DataGrid

开发者 https://www.devze.com 2023-02-14 19:48 出处:网络
So I have a CSV file: Header1,Header2,Header3,Header4 Data11,Data12,Data13,Data14 Data21,开发者_如何转开发Data22,Data23,Data24

So I have a CSV file:

    Header1,Header2,Header3,Header4
    Data11,Data12,Data13,Data14
    Data21,开发者_如何转开发Data22,Data23,Data24
    Data31,Data32,Data33,Data34
    Data41,Data42,Data43,Data44

and a DataGrid in an WPF project. I cannot, for the life of me, get it to import. What I was trying to do before was add all the columns (Header1, Header2, Header3, Header4) then add the rows... but there didn't seem to be any way to add rows. So I tried using ItemSource... but no luck.

So... how do I import a CSV file into a System.Windows.Controls.DataGrid

UPDATE

So I tried this:

    DataTable table = CSVReader.ReadCSVFile(fileName, true);
    dataGrid.ItemsSource = table.DefaultView;

And it seems to work... somewhat:

C# Load CSV into DataGrid

UPDATE 2

So after turning on AutoGenerateColumns, everything worked perfectly.


Take a look at this library. It lets you convert any CSV into an object of type DataTable and bind that to the DataGrid like this:

DataTable table = CSVReader.ReadCSVFile(fileName, true);
myGridView.ItemSource = table.DefaultView;
myGridView.AutoGenerateColumns = true;

If you already have parsed your CSV into a table, just bind the ItemSource to the table's DefaultView property and set AutoGenerateColums to true

0

精彩评论

暂无评论...
验证码 换一张
取 消