Khi ứng dụng được chạy, DataGridView
được liên kết với một số DataTable
. Sau đó, tôi thêm nhiều cột hơn vào DataTable
theo chương trình và được phản ánh trong dữ liệu cơ bản - tức là cột Các giá trị như chúng phải như vậy. Tuy nhiên, điều này không được phản ánh trong số DataGridView
. Thay vào đó, các cột được nối vào tập hợp được tạo ban đầu.Thay đổi thứ tự cột trong DataTable được liên kết với DataGridView không phản ánh trong chế độ xem
Ví dụ này cho thấy,
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public DataTable data = new DataTable();
private void button1_Click(object sender, EventArgs e)
{
this.dataGridView1.DataSource = data;
for (int i = 0; i < 5; i++)
{
this.data.Columns.Add(i.ToString());
}
}
private void button2_Click(object sender, EventArgs e)
{
DataColumn foo = new DataColumn();
this.data.Columns.Add(foo);
foo.SetOrdinal(0);
}
private void button3_Click(object sender, EventArgs e)
{
foreach (DataColumn tmpCol in this.data.Columns)
{
Console.WriteLine("{0} : {1}", tmpCol.ColumnName, tmpCol.Ordinal);
}
}
}
Nút 1 tạo ra các cột, nút 2 cho biết thêm một cột và đặt thứ tự 0 để nó phải là đầu tiên trong lưới, nút 3 hiển thị ordinals của các cột và cho thấy họ là cách họ nên ở trong số DataTable
.
Vui lòng sửa liên kết của bạn –