ListBox.SelectedValueChanged
using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Data.SqlClient; public class Employee{ public string ID; public string Name ; public Employee(string strName, string strID) { this.ID = strID; this.Name = strName; } public override string ToString() { return this.ID + " : " + this.Name; } } public class Form1 : System.Windows.Forms.Form { private System.Windows.Forms.GroupBox groupBox1; private System.Windows.Forms.RadioButton rbAuthors; private System.Windows.Forms.RadioButton rbEmployees; private System.Windows.Forms.ListBox lb; private DataTable dataTable; private ArrayList Employees = new ArrayList(); private System.ComponentModel.Container components = null; public Form1() { InitializeComponent(); lb.Items.Add("A"); lb.Items.Add("B"); lb.Items.Add("C"); lb.Items.Add("D"); lb.Items.Add("E"); lb.SelectedIndex = 0; // populate the arraylist for later use. Employees.Add(new Employee("A", "1")); Employees.Add(new Employee("B", "2")); Employees.Add(new Employee("C", "3")); Employees.Add(new Employee("D", "4")); Employees.Add(new Employee("E", "5")); Employees.Add(new Employee("F", "6")); Employees.Add(new Employee("G", "7")); } protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } private void InitializeComponent() { this.lb = new System.Windows.Forms.ListBox(); this.groupBox1 = new System.Windows.Forms.GroupBox(); this.rbEmployees = new System.Windows.Forms.RadioButton(); this.rbAuthors = new System.Windows.Forms.RadioButton(); this.groupBox1.SuspendLayout(); this.SuspendLayout(); // // lb // this.lb.Location = new System.Drawing.Point(16, 8); this.lb.Name = "lb"; this.lb.Size = new System.Drawing.Size(232, 212); this.lb.TabIndex = 0; this.lb.DisplayMemberChanged += new System.EventHandler(this.lb_DisplayMemberChanged); this.lb.ValueMemberChanged += new System.EventHandler(this.lb_ValueMemberChanged); this.lb.DataSourceChanged += new System.EventHandler(this.lb_DataSourceChanged); this.lb.SelectedValueChanged += new System.EventHandler(this.lb_SelectedValueChanged); this.lb.SelectedIndexChanged += new System.EventHandler(this.lb_SelectedIndexChanged); // // groupBox1 // this.groupBox1.Controls.AddRange(new System.Windows.Forms.Control[] { this.rbEmployees, this.rbAuthors}); this.groupBox1.Location = new System.Drawing.Point(16, 240); this.groupBox1.Name = "groupBox1"; this.groupBox1.TabIndex = 1; this.groupBox1.TabStop = false; this.groupBox1.Text = "DataSource"; // // rbEmployees // this.rbEmployees.Location = new System.Drawing.Point(24, 56); this.rbEmployees.Name = "rbEmployees"; this.rbEmployees.TabIndex = 1; this.rbEmployees.Text = "Employee\'s"; this.rbEmployees.CheckedChanged += new System.EventHandler(this.rb_CheckedChanged); // // rbAuthors // this.rbAuthors.Checked = true; this.rbAuthors.Location = new System.Drawing.Point(24, 32); this.rbAuthors.Name = "rbAuthors"; this.rbAuthors.TabIndex = 0; this.rbAuthors.TabStop = true; this.rbAuthors.Text = "Authors"; this.rbAuthors.CheckedChanged += new System.EventHandler(this.rb_CheckedChanged); // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(264, 389); this.Controls.AddRange(new System.Windows.Forms.Control[] { this.groupBox1, this.lb}); this.Name = "Form1"; this.Text = "Form1"; this.Load += new System.EventHandler(this.Form1_Load); this.groupBox1.ResumeLayout(false); this.ResumeLayout(false); } [STAThread] static void Main() { Application.Run(new Form1()); } private void rb_CheckedChanged(object sender, System.EventArgs e) { lb.DataSource = Employees; lb.DisplayMember = "Name"; lb.ValueMember = "ID"; } private void lb_SelectedIndexChanged(object sender, System.EventArgs e) { MessageBox.Show(lb.SelectedIndex.ToString()+ "\n" + lb.GetItemText(lb.SelectedItem),"lb_SelectedIndexChanged"); } private void lb_SelectedValueChanged(object sender, System.EventArgs e) { MessageBox.Show(lb.GetItemText(lb.SelectedItem),"lb_SelectedValueChanged"); } private void lb_DataSourceChanged(object sender, System.EventArgs e) { MessageBox.Show(lb.DataSource.ToString(), "lb_DataSourceChanged"); } private void lb_DisplayMemberChanged(object sender, System.EventArgs e) { MessageBox.Show(lb.DisplayMember.ToString(), "lb_DisplayMemberChanged"); } private void lb_ValueMemberChanged(object sender, System.EventArgs e) { MessageBox.Show(lb.ValueMember.ToString(), "lb_ValueMemberChanged"); } private void Form1_Load(object sender, System.EventArgs e) { this.lb.SelectedValueChanged += new System.EventHandler(this.lb_SelectedValueChanged); this.lb.SelectedIndexChanged += new System.EventHandler(this.lb_SelectedIndexChanged); } }