Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mengikat Senarai Objek Tersuai pada ComboBox dan Dapatkan Item Terpilih?

Bagaimana untuk Mengikat Senarai Objek Tersuai pada ComboBox dan Dapatkan Item Terpilih?

Patricia Arquette
Lepaskan: 2025-01-13 09:47:43
asal
934 orang telah melayarinya

How to Bind a List of Custom Objects to a ComboBox and Retrieve the Selected Item?

Ikat senarai objek pada pilihan kotak kombo

Anda memerlukan penyelesaian untuk mengikat senarai objek tersuai pada kotak kombo dan memaparkan sifatnya yang ditentukan sebagai label pilihan. Sebagai latar belakang, pertimbangkan kelas berikut:

<code class="language-c#">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

Panduan langkah demi langkah

Untuk membuat pengikatan, ikut langkah berikut:

  1. Buat Senarai objek tersuai (mis., Negara):

    <code class="language-c#"> List<Country> countries = new List<Country> { new Country { Name = "UK" }, new Country { Name = "Australia" }, new Country { Name = "France" } };</code>
    Salin selepas log masuk
  2. Mulakan BindingSource dan tetapkan DataSourcenya ke Senarai:

    <code class="language-c#"> var bindingSource1 = new BindingSource();
     bindingSource1.DataSource = countries;</code>
    Salin selepas log masuk
  3. Tetapkan DataSource kotak kombo kepada DataSource of BindingSource:

    <code class="language-c#"> comboBox1.DataSource = bindingSource1.DataSource;</code>
    Salin selepas log masuk
  4. Nyatakan sifat yang akan dipaparkan dalam kotak kombo sebagai Ahli Paparan:

    <code class="language-c#"> comboBox1.DisplayMember = "Name";</code>
    Salin selepas log masuk
  5. Menentukan bahawa nilai yang dikembalikan oleh kotak kombo akan menggunakan harta sebagai ValueMember:

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

Dapatkan semula item yang dipilih

Untuk mendapatkan objek Negara yang dipilih daripada kotak kombo, hantar item yang dipilih kepada jenis yang sepadan:

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

Kemas kini dinamik

Jika anda memerlukan kotak kombo untuk mengemas kini secara automatik, pastikan DataSource melaksanakan antara muka IBindingList. BindingList ialah pelaksanaan yang menyokong perubahan data masa nyata.

Paparkan objek dan sifat

Perhatikan bahawa Ahli Paparan harus merujuk sifat dalam kelas (cth., "Nama"). Jika anda menggunakan medan (contohnya, "Nama;"), nilai tidak akan dapat diakses dan kotak kombo akan memaparkan jenis objek dan bukannya nilai sifat.

Atas ialah kandungan terperinci Bagaimana untuk Mengikat Senarai Objek Tersuai pada ComboBox dan Dapatkan Item Terpilih?. 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