C# ComboBox 데이터 바인딩: 개체 목록 표시
이 가이드에서는 C# ComboBox를 개체 목록으로 채우고 각 개체의 특정 속성(예: "이름")을 드롭다운 항목으로 표시하는 방법을 보여줍니다. BindingSource
을 사용하여 데이터 연결을 관리하겠습니다.
1단계: 데이터 클래스 및 목록 정의
먼저 ComboBox에 표시하려는 속성이 포함된 클래스(예: Country
)를 만듭니다. 다음은 Name
속성과 City
개체 목록이 포함된 예입니다.
<code class="language-csharp">public class Country { public string Name { get; set; } public IList<City> Cities { get; set; } = new List<City>(); } public class City { public string Name { get; set; } }</code>
이제 Country
개체 목록을 만듭니다.
<code class="language-csharp">List<Country> countries = new List<Country>() { new Country { Name = "UK" }, new Country { Name = "Australia" }, new Country { Name = "France" } };</code>
2단계: BindingSource 설정
BindingSource
개체를 만들고 countries
목록을 데이터 소스로 할당합니다.
<code class="language-csharp">BindingSource bindingSource = new BindingSource(); bindingSource.DataSource = countries;</code>
3단계: BindingSource를 ComboBox에 연결
BindingSource
을 콤보박스에 연결하세요:
<code class="language-csharp">comboBox1.DataSource = bindingSource;</code>
4단계: 표시 및 값 구성원 구성
ComboBox 드롭다운에 표시할 속성(DisplayMember
)과 항목 선택 시 검색할 속성(ValueMember
)을 지정합니다.
<code class="language-csharp">comboBox1.DisplayMember = "Name"; comboBox1.ValueMember = "Name"; // Or another suitable property if needed</code>
5단계: 선택한 항목에 액세스
선택한 Country
개체를 가져오려면:
<code class="language-csharp">Country selectedCountry = (Country)comboBox1.SelectedItem;</code>
동적 업데이트 처리(IBindingList)
동적 업데이트(목록에서 항목 추가 또는 제거)의 경우 데이터 소스가 IBindingList
인터페이스를 구현하는지 확인하세요. BindingList<T>
은 좋은 선택입니다:
<code class="language-csharp">BindingList<Country> countries = new BindingList<Country>() { /* ... your countries ... */ }; bindingSource.DataSource = countries;</code>
이 접근 방식을 사용하면 기본 countries
목록에 대한 변경 사항이 ComboBox에 자동으로 반영됩니다.
위 내용은 C#에서 ComboBox에 개체 목록을 바인딩하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!