Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mengikat Senarai Objek Kelas ke ComboBox dalam C#?

Bagaimana untuk Mengikat Senarai Objek Kelas ke ComboBox dalam C#?

DDD
Lepaskan: 2025-01-13 07:47:41
asal
116 orang telah melayarinya

How to Bind a List of Class Objects to a ComboBox in C#?

Ikat senarai objek kelas pada kawalan ComboBox

Jika anda mempunyai senarai objek kelas dan ingin mengikatnya pada kawalan ComboBox, ikut langkah berikut:

1. Buat kelas anda

Andaikan terdapat kelas yang mewakili negara:

<code class="language-csharp">public class Country
{
    public string Name { get; set; }
    public IList<city> Cities { get; set; }

    public Country()
    {
        Cities = new List<city>();
    }
}</code>
Salin selepas log masuk

2. Cipta objek BindingSource

Buat objek BindingSource dan tetapkan sifat DataSourcenya kepada senarai negara anda. Contohnya:

<code class="language-csharp">var countries = new List<Country> { new Country { Name = "UK" }, new Country { Name = "Australia" }, new Country { Name = "France" } };

var bindingSource1 = new BindingSource();
bindingSource1.DataSource = countries;</code>
Salin selepas log masuk

3. Tetapkan sumber data ComboBox

Tetapkan sifat DataSource ComboBox kepada sifat DataSource objek BindingSource. Ini akan mewujudkan sambungan antara ComboBox dan senarai anda.

<code class="language-csharp">comboBox1.DataSource = bindingSource1.DataSource;</code>
Salin selepas log masuk

4. Tetapkan sifat DisplayMember dan ValueMember

Nyatakan atribut kelas untuk dipaparkan dalam ComboBox dan atribut untuk disimpan sebagai nilai yang dipilih. Gunakan DisplayMember untuk menetapkan sifat paparan dan ValueMember untuk menetapkan sifat nilai:

<code class="language-csharp">comboBox1.DisplayMember = "Name";
comboBox1.ValueMember = "Name";</code>
Salin selepas log masuk

5. Dapatkan item yang dipilih

Untuk mengakses negara yang dipilih, hantar sifat SelectedItem ComboBox ke jenis kelas anda:

<code class="language-csharp">Country country = (Country)comboBox1.SelectedItem;</code>
Salin selepas log masuk

Petua:

  • Pastikan struktur data yang digunakan sebagai DataSource melaksanakan antara muka IBindingList. BindingList ialah satu pelaksanaan sedemikian.
  • Ikat pada sifat, bukan medan, untuk memastikan akses yang betul kepada nilai.

Atas ialah kandungan terperinci Bagaimana untuk Mengikat Senarai Objek Kelas ke ComboBox dalam C#?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan