如何将DataTable绑定到DataGrid

问题描述 投票:12回答:4

这是我的DataTable。

DataTable _simpleDataTable = new ataTable();     

var person = new DataColumn("Person") {DataType = typeof (Person)};
_simpleDataTable.Columns.Add(person);

var student = new DataColumn("Student") {DataType = typeof (Student)};
_simpleDataTable.Columns.Add(student);

 var dr1 = _simpleDataTable.NewRow();
dr1[0] = new Person {PersonId = 1, PersonName = "TONY"};
dr1[1] = new Student { StudentId = 1, StudentName = "TONY" };
_simpleDataTable.Rows.Add(dr1);

var dr2 = _simpleDataTable.NewRow();
dr2[0] = new Person { PersonId = 2, PersonName = "MAL" };
dr2[1] = new Student { StudentId = 2, StudentName = "MAL" };
_simpleDataTable.Rows.Add(dr2);

请告诉我如何绑定上面的DataTable类型。

c# wpf data-binding datatable
4个回答
3
投票

非WPF DataGrid的解决方案:

//Create DataTable

DataTable dt = new DataTable();

//Put some columns in it.

dt.Columns.Add(new DataColumn("Item #", typeof(int)));

dt.Columns.Add(new DataColumn("Contract Number", typeof(string)));

dt.Columns.Add(new DataColumn("Customer Name", typeof(string)));

// Create the record

DataRow dr = dt.NewRow();

dr["Item #"] = i;

dr["Customer Name"] = xmn2[1].InnerText;  //value from textbox on screen

dr["Contract Number"] = xmn4[1].InnerText; //value from textbox on screen

dt.Rows.Add(dr);

//Bind the GridView to the data in the data table for display.

this.GridView1.Visible = true;

GridView1.DataSource = dt;

GridView1.DataBind();

0
投票

试试这个:

DataTable _simpleDataTable = new ataTable();
DataGridInstance.AutoGenerateColumns = true;
DataGridInstance.ItemsSource = _simpleDataTable.DefaultView;
© www.soinside.com 2019 - 2024. All rights reserved.