Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mengemas kini DataGridView Apabila Mengikat kepada Senarai Dinamik?

Bagaimana untuk Mengemas kini DataGridView Apabila Mengikat kepada Senarai Dinamik?

Patricia Arquette
Lepaskan: 2025-01-04 16:10:44
asal
596 orang telah melayarinya

How to Keep a DataGridView Updated When Binding to a Dynamic List?

Cara Memaparkan Senarai Mengikat Yang Dikemas Kini Secara Dinamik dalam DataGridView

Pengenalan

Mengikat Senarai< T> kepada DataGridView boleh menjadi cara yang mudah untuk memaparkan data dinamik. Walau bagaimanapun, mengemas kini senarai mungkin tidak selalu mencerminkan perubahan dalam DataGridView tanpa pengikatan semula yang jelas.

Masalah

Pertimbangkan senario dengan Senarai mengandungi dua item ("Joe Black" dan "Misha Kozlov"). Apabila terikat pada DataGridView, item ini dipaparkan. Walau bagaimanapun, menambah item baharu pada senarai tidak mengemas kini kandungan grid.

Penyelesaian

Menggunakan BindingList

DataGridView tidak mengekalkan sambungan terus ke Senarai. Sebaliknya, gunakan BindingList, yang melaksanakan IBindingList dan memberitahu grid perubahan.

var list = new BindingList<Person>(persons);
myGrid.DataSource = list;
Salin selepas log masuk

Menggunakan BindingSource

Untuk kawalan yang lebih terperinci, pertimbangkan untuk menggunakan a Sumber Pengikat:

var list = new List<Person>()
{
    new Person { Name = "Joe" },
    new Person { Name = "Misha" },
};
var bindingList = new BindingList<Person>(list);
var source = new BindingSource(bindingList, null);
grid.DataSource = source;
Salin selepas log masuk

The BindingSource menyediakan fleksibiliti untuk manipulasi data dan mengikat berbilang sumber data. Perubahan kepada data asas disebarkan ke grid tanpa pengikatan semula yang jelas.

Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini DataGridView Apabila Mengikat kepada Senarai Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan