首頁 > 後端開發 > C++ > 如何在 C# 中將類別物件清單綁定到組合框?

如何在 C# 中將類別物件清單綁定到組合框?

DDD
發布: 2025-01-13 07:47:41
原創
115 人瀏覽過

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

將類別物件清單綁定到ComboBox控制項

如果您有一個類別物件列表,並希望將其綁定到ComboBox控件,請按照以下步驟操作:

1. 建立您的類別

假設有一個表示國家的類別:

<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>
登入後複製

2. 建立BindingSource物件

建立一個BindingSource對象,並將它的DataSource屬性設定為您的國家清單。例如:

<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>
登入後複製

3. 設定ComboBox的資料來源

將ComboBox的DataSource屬性設定為BindingSource物件的DataSource屬性。這將在ComboBox和您的清單之間建立連線。

<code class="language-csharp">comboBox1.DataSource = bindingSource1.DataSource;</code>
登入後複製

4. 設定DisplayMember與ValueMember屬性

指定要在ComboBox中顯示的類別屬性以及作為所選值儲存的屬性。使用DisplayMember設定顯示屬性,使用ValueMember設定值屬性:

<code class="language-csharp">comboBox1.DisplayMember = "Name";
comboBox1.ValueMember = "Name";</code>
登入後複製

5. 取得所選項目

要存取所選國家,請將ComboBox的SelectedItem屬性強制轉換為您的類別類型:

<code class="language-csharp">Country country = (Country)comboBox1.SelectedItem;</code>
登入後複製

提示:

  • 確保用作DataSource的資料結構實作了IBindingList介面。 BindingList就是一個這樣的實作。
  • 綁定到屬性,而不是字段,以確保正確存取值。

以上是如何在 C# 中將類別物件清單綁定到組合框?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板