c# ComboBox 잔기술들

dictionary 바인드하기

딕셔너리 자체를 바인드하는 게 아니라 키나, 밸류의 필드를 해야 하는 거에 유의한다.

class Class1
{
    public string String { get; set; }
}
private void Form1_Load(object sender, EventArgs e)
{
    Dictionary<int, Class1> class1s = new();
    
    class1s.Add(0, new Class1 { String = "abcde" });
    comboBox1.DataSource = class1s.Values.ToList();
    comboBox1.DisplayMember = "String";
}

wpf DataColumn 바인드하기

wpf의 콤보박스는 ComboBox.DisplayMember가 아니고 ComboBox.DisplayMemberPath를 이용한다.

ComboBox1.ItemsSource = DataSet1.Tables[0].DefaultView; // 첫 테이블
ComboBox1.DisplayMemberPath = "칼럼 이름";