public Form1() { InitializeComponent(); Dictionary<int, string> dic = new Dictionary<int, string>(); dic.Add(1, "a"); dic.Add(2, "b"); foreach (var keyValue in dic) { this.comboBox1.Items.Add(keyValue); } DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Rows.Add(new object[] { 0, "abc0" }); dt.Rows.Add(new object[] { 1, "abc1" }); dt.Rows.Add(new object[] { 2, "abc2" }); dt.Rows.Add(new object[] { 3, "abc3" }); dt.Rows.Add(new object[] { 4, "abc4" }); dt.Rows.Add(new object[] { 5, "abc5" }); comboBox2.DisplayMember = "Name"; comboBox2.ValueMember = "Id"; //comboBox2.SelectedIndex = 0; comboBox2.DataSource = dt; } private void Form1_Load(object sender, EventArgs e) { } private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { this.textBox1.Text = comboBox1.SelectedItem.ToString(); } private void comboBox2_SelectedIndexChanged(object sender, EventArgs e) { this.textBox2.Text = comboBox2.SelectedValue.ToString() + " : " + comboBox2.Text.ToString(); }