ListBox.ValueMemberChanged
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);
}
}
Related examples in the same category