C#
ComboBox SelectedItem
네오팡
2011. 10. 27. 11:08
DataTable로 바인딩 하여 콤보박스를 표시했을 경우
선택한 Row 전체를 가져오고자 할 때
var columnValue = ComboBox.SelectedRow["ColumnName"].ToString(); 또는 var selectedRow = ComboBox.SelectedItem as DataRowView; var columnValue = selectedRow["ColumnName"].ToString();
ValueMember나 DisplayMember로 지정하지 않은 컬럼의 값으로
콤보박스를 선택하고자 할 때
콤보박스를 선택하고자 할 때
public static DataRowView GetComboSelectedItem(ComboBox cbo , string columnName, string valueForSelect) { foreach (DataRowView row in cbo.Items) { if (row[columnName].ToString() == valueForSelect) { return row; } } return null; } DataTable dt = ...; cboCombo.DisplayMember = "Text"; cboCombo.ValueMember = "Code"; cboCombo.DataSource = dt; cboCombo.SelectedItem = GetComboSelectedItem(cboCombo, "OtherColumnName", "04");
콤보박스 Dictionary 로 바인딩
var list = new Dictionary<string, int>(); list.Add("1", 100); list.Add("2", 200) list.Add("3", 300); combobox.DisplayMember="Key"; combobox.ValueMember="Value"; combobox.DataSource = new BindingSource(list, null);