<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp_by_API%2FSystem.Windows.Forms%2FComboBox</id>
		<title>Csharp/C Sharp by API/System.Windows.Forms/ComboBox - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp_by_API%2FSystem.Windows.Forms%2FComboBox"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Windows.Forms/ComboBox&amp;action=history"/>
		<updated>2026-04-30T02:50:05Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Windows.Forms/ComboBox&amp;diff=4224&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Windows.Forms/ComboBox&amp;diff=4224&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:35Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Windows.Forms/ComboBox&amp;diff=4225&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Windows.Forms/ComboBox&amp;diff=4225&amp;oldid=prev"/>
				<updated>2010-05-26T12:10:10Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==ComboBox.AutoCompleteMode==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class Form1 : Form&lt;br /&gt;
{&lt;br /&gt;
    private System.Windows.Forms.ruboBox lstColors;&lt;br /&gt;
  public Form1() {&lt;br /&gt;
        InitializeComponent();&lt;br /&gt;
        string[] colorNames;&lt;br /&gt;
        colorNames = System.Enum.GetNames(typeof(KnownColor));&lt;br /&gt;
        lstColors.Items.AddRange(colorNames);&lt;br /&gt;
  }&lt;br /&gt;
    private void InitializeComponent()&lt;br /&gt;
    {&lt;br /&gt;
        this.lstColors = new System.Windows.Forms.ruboBox();&lt;br /&gt;
        this.SuspendLayout();&lt;br /&gt;
        this.lstColors.AutoCompleteMode = ((System.Windows.Forms.AutoCompleteMode)((System.Windows.Forms.AutoCompleteMode.Suggest | System.Windows.Forms.AutoCompleteMode.Append)));&lt;br /&gt;
        this.lstColors.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems;&lt;br /&gt;
        this.lstColors.FormattingEnabled = true;&lt;br /&gt;
        this.lstColors.Location = new System.Drawing.Point(13, 13);&lt;br /&gt;
        this.lstColors.Name = &amp;quot;lstColors&amp;quot;;&lt;br /&gt;
        this.lstColors.Size = new System.Drawing.Size(267, 21);&lt;br /&gt;
        this.lstColors.TabIndex = 0;&lt;br /&gt;
        this.AutoScaleBaseSize = new System.Drawing.Size(5, 14);&lt;br /&gt;
        this.ClientSize = new System.Drawing.Size(296, 82);&lt;br /&gt;
        this.Controls.Add(this.lstColors);&lt;br /&gt;
        this.Font = new System.Drawing.Font(&amp;quot;Tahoma&amp;quot;, 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));&lt;br /&gt;
        this.Name = &amp;quot;Form1&amp;quot;;&lt;br /&gt;
        this.Text = &amp;quot;AutoComplete&amp;quot;;&lt;br /&gt;
        this.ResumeLayout(false);&lt;br /&gt;
    }&lt;br /&gt;
  [STAThread]&lt;br /&gt;
  static void Main()&lt;br /&gt;
  {&lt;br /&gt;
    Application.EnableVisualStyles();&lt;br /&gt;
    Application.Run(new Form1());&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.AutoCompleteSource==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class Form1 : Form&lt;br /&gt;
{&lt;br /&gt;
    private System.Windows.Forms.ruboBox lstColors;&lt;br /&gt;
  public Form1() {&lt;br /&gt;
        InitializeComponent();&lt;br /&gt;
        string[] colorNames;&lt;br /&gt;
        colorNames = System.Enum.GetNames(typeof(KnownColor));&lt;br /&gt;
        lstColors.Items.AddRange(colorNames);&lt;br /&gt;
  }&lt;br /&gt;
    private void InitializeComponent()&lt;br /&gt;
    {&lt;br /&gt;
        this.lstColors = new System.Windows.Forms.ruboBox();&lt;br /&gt;
        this.SuspendLayout();&lt;br /&gt;
        this.lstColors.AutoCompleteMode = ((System.Windows.Forms.AutoCompleteMode)((System.Windows.Forms.AutoCompleteMode.Suggest | System.Windows.Forms.AutoCompleteMode.Append)));&lt;br /&gt;
        this.lstColors.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems;&lt;br /&gt;
        this.lstColors.FormattingEnabled = true;&lt;br /&gt;
        this.lstColors.Location = new System.Drawing.Point(13, 13);&lt;br /&gt;
        this.lstColors.Name = &amp;quot;lstColors&amp;quot;;&lt;br /&gt;
        this.lstColors.Size = new System.Drawing.Size(267, 21);&lt;br /&gt;
        this.lstColors.TabIndex = 0;&lt;br /&gt;
        this.AutoScaleBaseSize = new System.Drawing.Size(5, 14);&lt;br /&gt;
        this.ClientSize = new System.Drawing.Size(296, 82);&lt;br /&gt;
        this.Controls.Add(this.lstColors);&lt;br /&gt;
        this.Font = new System.Drawing.Font(&amp;quot;Tahoma&amp;quot;, 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));&lt;br /&gt;
        this.Name = &amp;quot;Form1&amp;quot;;&lt;br /&gt;
        this.Text = &amp;quot;AutoComplete&amp;quot;;&lt;br /&gt;
        this.ResumeLayout(false);&lt;br /&gt;
    }&lt;br /&gt;
  [STAThread]&lt;br /&gt;
  static void Main()&lt;br /&gt;
  {&lt;br /&gt;
    Application.EnableVisualStyles();&lt;br /&gt;
    Application.Run(new Form1());&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.DrawItem==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
using System.Data;&lt;br /&gt;
public class Form1 : System.Windows.Forms.Form {&lt;br /&gt;
    private System.Windows.Forms.ruboBox comboBox1 = new System.Windows.Forms.ruboBox();&lt;br /&gt;
    private System.Windows.Forms.Label label1 = new System.Windows.Forms.Label();&lt;br /&gt;
    private System.Windows.Forms.ruboBox comboBox2 = new System.Windows.Forms.ruboBox();&lt;br /&gt;
    private System.Windows.Forms.Label label2 = new System.Windows.Forms.Label();&lt;br /&gt;
    ArrayList colorArray = new ArrayList();&lt;br /&gt;
    ArrayList fontArray = new ArrayList();&lt;br /&gt;
    public Form1() {&lt;br /&gt;
        this.SuspendLayout();&lt;br /&gt;
        this.ruboBox1.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawVariable;&lt;br /&gt;
        this.ruboBox1.ItemHeight = 25;&lt;br /&gt;
        this.ruboBox1.Location = new System.Drawing.Point(16, 40);&lt;br /&gt;
        this.ruboBox1.Size = new System.Drawing.Size(264, 31);&lt;br /&gt;
        this.ruboBox1.SelectedIndexChanged += new System.EventHandler(this.MyItemSelected);&lt;br /&gt;
        this.ruboBox1.MeasureItem += new System.Windows.Forms.MeasureItemEventHandler(this.ruboBox1_MeasureItem);&lt;br /&gt;
        this.ruboBox1.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.ruboBox1_DrawItem);&lt;br /&gt;
        this.label1.Location = new System.Drawing.Point(16, 16);&lt;br /&gt;
        this.label1.Size = new System.Drawing.Size(100, 16);&lt;br /&gt;
        this.label1.Text = &amp;quot;Font Combo Box&amp;quot;;&lt;br /&gt;
        this.ruboBox2.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;&lt;br /&gt;
        this.ruboBox2.DropDownStyle = System.Windows.Forms.ruboBoxStyle.DropDownList;&lt;br /&gt;
        this.ruboBox2.ItemHeight = 20;&lt;br /&gt;
        this.ruboBox2.Location = new System.Drawing.Point(16, 104);&lt;br /&gt;
        this.ruboBox2.Size = new System.Drawing.Size(264, 26);&lt;br /&gt;
        this.ruboBox2.SelectedIndexChanged += new System.EventHandler(this.MyItemSelected);&lt;br /&gt;
        this.ruboBox2.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.ruboBox2_DrawItem);&lt;br /&gt;
        this.label2.Location = new System.Drawing.Point(24, 80);&lt;br /&gt;
        this.label2.Text = &amp;quot;Color Combo Box&amp;quot;;&lt;br /&gt;
        this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);&lt;br /&gt;
        this.ClientSize = new System.Drawing.Size(312, 157);&lt;br /&gt;
        this.Controls.AddRange(new System.Windows.Forms.Control[] {&lt;br /&gt;
                                      this.label2,&lt;br /&gt;
                                      this.label1,&lt;br /&gt;
                                      this.ruboBox1,&lt;br /&gt;
                                      this.ruboBox2});&lt;br /&gt;
        this.Load += new System.EventHandler(this.Form1_Load);&lt;br /&gt;
        this.ResumeLayout(false);&lt;br /&gt;
    }&lt;br /&gt;
    [STAThread]&lt;br /&gt;
    static void Main() {&lt;br /&gt;
        Application.Run(new Form1());&lt;br /&gt;
    }&lt;br /&gt;
    private void Form1_Load(object sender, System.EventArgs e) {&lt;br /&gt;
        colorArray.Add(new SolidBrush(Color.Yellow));&lt;br /&gt;
        colorArray.Add(new SolidBrush(Color.Black));&lt;br /&gt;
        colorArray.Add(new SolidBrush(Color.Azure));&lt;br /&gt;
        colorArray.Add(new SolidBrush(Color.Firebrick));&lt;br /&gt;
        colorArray.Add(new SolidBrush(Color.DarkMagenta));&lt;br /&gt;
        comboBox2.Items.Add(&amp;quot;A&amp;quot;);&lt;br /&gt;
        comboBox2.Items.Add(&amp;quot;B&amp;quot;);&lt;br /&gt;
        comboBox2.Items.Add(&amp;quot;C&amp;quot;);&lt;br /&gt;
        comboBox2.Items.Add(&amp;quot;D&amp;quot;);&lt;br /&gt;
        comboBox2.Items.Add(&amp;quot;E&amp;quot;);&lt;br /&gt;
        fontArray.Add(new Font(&amp;quot;Ariel&amp;quot;, 15, FontStyle.Bold));&lt;br /&gt;
        fontArray.Add(new Font(&amp;quot;Courier&amp;quot;, 12, FontStyle.Italic));&lt;br /&gt;
        fontArray.Add(new Font(&amp;quot;Veranda&amp;quot;, 14, FontStyle.Bold));&lt;br /&gt;
        fontArray.Add(new Font(&amp;quot;System&amp;quot;, 10, FontStyle.Strikeout));&lt;br /&gt;
        fontArray.Add(new Font(&amp;quot;Century SchoolBook&amp;quot;, 15, FontStyle.Underline));&lt;br /&gt;
        comboBox1.Items.Add(&amp;quot;W&amp;quot;);&lt;br /&gt;
        comboBox1.Items.Add(&amp;quot;H&amp;quot;);&lt;br /&gt;
        comboBox1.Items.Add(&amp;quot;P&amp;quot;);&lt;br /&gt;
        comboBox1.Items.Add(&amp;quot;D&amp;quot;);&lt;br /&gt;
        comboBox1.Items.Add(&amp;quot;L&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    private void comboBox1_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e) {&lt;br /&gt;
        Graphics g = e.Graphics;&lt;br /&gt;
        Rectangle r = e.Bounds;&lt;br /&gt;
        Font fn = null;&lt;br /&gt;
        if (e.Index &amp;gt;= 0) {&lt;br /&gt;
            fn = (Font)fontArray[e.Index];&lt;br /&gt;
            string s = (string)comboBox1.Items[e.Index];&lt;br /&gt;
            StringFormat sf = new StringFormat();&lt;br /&gt;
            sf.Alignment = StringAlignment.Near;&lt;br /&gt;
            e.Graphics.DrawRectangle(new Pen(new SolidBrush(Color.Black), 2), r);&lt;br /&gt;
            if (e.State == (DrawItemState.NoAccelerator | DrawItemState.NoFocusRect)) {&lt;br /&gt;
                e.Graphics.FillRectangle(new SolidBrush(Color.White), r);&lt;br /&gt;
                e.Graphics.DrawString(s, fn, new SolidBrush(Color.Black), r, sf);&lt;br /&gt;
                e.DrawFocusRectangle();&lt;br /&gt;
            } else {&lt;br /&gt;
                e.Graphics.FillRectangle(new SolidBrush(Color.LightBlue), r);&lt;br /&gt;
                e.Graphics.DrawString(s, fn, new SolidBrush(Color.Red), r, sf);&lt;br /&gt;
                e.DrawFocusRectangle();&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    private void comboBox2_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e) {&lt;br /&gt;
        Graphics g = e.Graphics;&lt;br /&gt;
        Rectangle r = e.Bounds;&lt;br /&gt;
        if (e.Index &amp;gt;= 0) {&lt;br /&gt;
            Rectangle rd = r;&lt;br /&gt;
            rd.Width = 100;&lt;br /&gt;
            Rectangle rt = r;&lt;br /&gt;
            SolidBrush b = (SolidBrush)colorArray[e.Index];&lt;br /&gt;
            g.FillRectangle(b, rd);&lt;br /&gt;
            StringFormat sf = new StringFormat();&lt;br /&gt;
            sf.Alignment = StringAlignment.Near;&lt;br /&gt;
            Console.WriteLine(e.State.ToString());&lt;br /&gt;
            e.Graphics.DrawRectangle(new Pen(new SolidBrush(Color.Black), 2), r);&lt;br /&gt;
            if (e.State == (DrawItemState.NoAccelerator | DrawItemState.NoFocusRect)) {&lt;br /&gt;
                e.Graphics.FillRectangle(new SolidBrush(Color.White), r);&lt;br /&gt;
                e.Graphics.DrawString(b.Color.Name, new Font(&amp;quot;Ariel&amp;quot;, 8, FontStyle.Bold), new SolidBrush(Color.Black), r, sf);&lt;br /&gt;
                e.DrawFocusRectangle();&lt;br /&gt;
            } else {&lt;br /&gt;
                e.Graphics.FillRectangle(new SolidBrush(Color.LightBlue), r);&lt;br /&gt;
                e.Graphics.DrawString(b.Color.Name, new Font(&amp;quot;Veranda&amp;quot;, 12, FontStyle.Bold), new SolidBrush(Color.Red), r, sf);&lt;br /&gt;
                e.DrawFocusRectangle();&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    private void MyItemSelected(object sender, System.EventArgs e) {&lt;br /&gt;
        ComboBox cb = null;&lt;br /&gt;
        if (sender.Equals(comboBox1))&lt;br /&gt;
            cb = comboBox1;&lt;br /&gt;
        else&lt;br /&gt;
            cb = comboBox2;&lt;br /&gt;
        int x = cb.SelectedIndex;&lt;br /&gt;
        if (sender.Equals(comboBox1)) {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Item Selected is = &amp;quot; + (string)cb.Items[x]);&lt;br /&gt;
        } else {&lt;br /&gt;
            SolidBrush br = (SolidBrush)colorArray[x];&lt;br /&gt;
            Console.WriteLine(&amp;quot;Color Selected is = &amp;quot; + br.Color.Name);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    private void comboBox1_MeasureItem(object sender, System.Windows.Forms.MeasureItemEventArgs e) {&lt;br /&gt;
        if (e.Index % 2 == 0) {&lt;br /&gt;
            e.ItemHeight = 45;&lt;br /&gt;
            e.ItemWidth = 20;&lt;br /&gt;
        } else {&lt;br /&gt;
            e.ItemHeight = 25;&lt;br /&gt;
            e.ItemWidth = 10;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.FormattingEnabled==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class Form1 : Form&lt;br /&gt;
{&lt;br /&gt;
    private System.Windows.Forms.ruboBox lstColors;&lt;br /&gt;
  public Form1() {&lt;br /&gt;
        InitializeComponent();&lt;br /&gt;
        string[] colorNames;&lt;br /&gt;
        colorNames = System.Enum.GetNames(typeof(KnownColor));&lt;br /&gt;
        lstColors.Items.AddRange(colorNames);&lt;br /&gt;
  }&lt;br /&gt;
    private void InitializeComponent()&lt;br /&gt;
    {&lt;br /&gt;
        this.lstColors = new System.Windows.Forms.ruboBox();&lt;br /&gt;
        this.SuspendLayout();&lt;br /&gt;
        this.lstColors.AutoCompleteMode = ((System.Windows.Forms.AutoCompleteMode)((System.Windows.Forms.AutoCompleteMode.Suggest | System.Windows.Forms.AutoCompleteMode.Append)));&lt;br /&gt;
        this.lstColors.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems;&lt;br /&gt;
        this.lstColors.FormattingEnabled = true;&lt;br /&gt;
        this.lstColors.Location = new System.Drawing.Point(13, 13);&lt;br /&gt;
        this.lstColors.Name = &amp;quot;lstColors&amp;quot;;&lt;br /&gt;
        this.lstColors.Size = new System.Drawing.Size(267, 21);&lt;br /&gt;
        this.lstColors.TabIndex = 0;&lt;br /&gt;
        this.AutoScaleBaseSize = new System.Drawing.Size(5, 14);&lt;br /&gt;
        this.ClientSize = new System.Drawing.Size(296, 82);&lt;br /&gt;
        this.Controls.Add(this.lstColors);&lt;br /&gt;
        this.Font = new System.Drawing.Font(&amp;quot;Tahoma&amp;quot;, 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));&lt;br /&gt;
        this.Name = &amp;quot;Form1&amp;quot;;&lt;br /&gt;
        this.Text = &amp;quot;AutoComplete&amp;quot;;&lt;br /&gt;
        this.ResumeLayout(false);&lt;br /&gt;
    }&lt;br /&gt;
  [STAThread]&lt;br /&gt;
  static void Main()&lt;br /&gt;
  {&lt;br /&gt;
    Application.EnableVisualStyles();&lt;br /&gt;
    Application.Run(new Form1());&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.Items==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;   &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class Select : Form {&lt;br /&gt;
  private Button draw = new Button();&lt;br /&gt;
  private ComboBox color = new ComboBox();&lt;br /&gt;
  public Select( ) {&lt;br /&gt;
    draw.Text = &amp;quot;Draw&amp;quot;;&lt;br /&gt;
    color.Text = &amp;quot;Choose a color&amp;quot;;&lt;br /&gt;
    Size = new Size(500,250);&lt;br /&gt;
    int w = 20;&lt;br /&gt;
    draw.Location = new Point(20,30);&lt;br /&gt;
    color.Location = new Point(w += 10 + color.Width, 30);&lt;br /&gt;
    color.Items.Add(&amp;quot;Red&amp;quot;);&lt;br /&gt;
    color.Items.Add(&amp;quot;Green&amp;quot;);&lt;br /&gt;
    color.Items.Add(&amp;quot;Blue&amp;quot;);&lt;br /&gt;
    Controls.Add(draw);&lt;br /&gt;
    Controls.Add(color);&lt;br /&gt;
    draw.Click += new EventHandler(Draw_Click);&lt;br /&gt;
  } &lt;br /&gt;
  protected void Draw_Click(Object sender, EventArgs e) {&lt;br /&gt;
    if (color.SelectedItem.ToString() == &amp;quot;Red&amp;quot; )&lt;br /&gt;
      Console.WriteLine(&amp;quot;It is red.&amp;quot;);&lt;br /&gt;
    else if (color.SelectedItem.ToString() == &amp;quot;Green&amp;quot;)&lt;br /&gt;
      Console.WriteLine(&amp;quot;It is green.&amp;quot;);&lt;br /&gt;
    else&lt;br /&gt;
      Console.WriteLine(&amp;quot;It is blue.&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  static void Main() {&lt;br /&gt;
    Application.Run(new Select());&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.Leave==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;  &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
public class ComboBoxes : Form&lt;br /&gt;
{&lt;br /&gt;
  ComboBox cmb;&lt;br /&gt;
  Button btnDisplay;&lt;br /&gt;
  Button btnInsert;&lt;br /&gt;
  Button btnSelect;&lt;br /&gt;
  Label lblEdit;&lt;br /&gt;
  TextBox txtDisplay;&lt;br /&gt;
  Boolean boolChange = false;&lt;br /&gt;
  Boolean boolProcessed = false;&lt;br /&gt;
  public ComboBoxes()&lt;br /&gt;
  {&lt;br /&gt;
    Size = new Size(300,400);&lt;br /&gt;
    this.Load += new EventHandler(this_Load);&lt;br /&gt;
    cmb = new ComboBox();&lt;br /&gt;
    cmb.Parent = this;&lt;br /&gt;
    cmb.Location = new Point(10,10);&lt;br /&gt;
    cmb.Size = new Size(ClientSize.Width / 2, Height - 200);&lt;br /&gt;
    cmb.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right | AnchorStyles.Bottom;&lt;br /&gt;
    cmb.DropDownStyle = ComboBoxStyle.DropDown;    &lt;br /&gt;
    cmb.DropDownStyle = ComboBoxStyle.Simple;&lt;br /&gt;
    cmb.DropDownWidth = (int)(cmb.Width * 1.5);&lt;br /&gt;
    cmb.MaxDropDownItems = 12;&lt;br /&gt;
    cmb.MaxLength = 20;&lt;br /&gt;
    cmb.SelectionChangeCommitted += new EventHandler(cmb_SelectionChangeCommitted);&lt;br /&gt;
    cmb.Leave += new EventHandler(cmb_Leave);&lt;br /&gt;
    btnInsert = new Button();&lt;br /&gt;
    btnInsert.Parent = this;&lt;br /&gt;
    btnInsert.Text = &amp;quot;&amp;amp;Insert Item&amp;quot;;&lt;br /&gt;
    btnInsert.Size = new Size((int)(Font.Height * .75) * btnInsert.Text.Length, cmb.Height);&lt;br /&gt;
    btnInsert.Location = new Point(cmb.Right + 10, cmb.Top);&lt;br /&gt;
    btnInsert.Click += new System.EventHandler(btnInsert_Click);&lt;br /&gt;
    lblEdit = new Label();&lt;br /&gt;
    lblEdit.Parent = this;&lt;br /&gt;
    lblEdit.BorderStyle = BorderStyle.Fixed3D;&lt;br /&gt;
    lblEdit.Location = new Point(cmb.Left, cmb.Bottom + 10);&lt;br /&gt;
    lblEdit.BackColor = Color.LightGray;&lt;br /&gt;
    lblEdit.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
    lblEdit.Size = new Size(cmb.DropDownWidth, Font.Height * 2);&lt;br /&gt;
    btnDisplay = new Button();&lt;br /&gt;
    btnDisplay.Parent = this;&lt;br /&gt;
    btnDisplay.Text = &amp;quot;&amp;amp;Display Items&amp;quot;;&lt;br /&gt;
    btnDisplay.Size = new Size((int)(Font.Height * .75) * btnDisplay.Text.Length, cmb.Height);&lt;br /&gt;
    btnDisplay.Location = new Point(lblEdit.Left, lblEdit.Bottom + 10);&lt;br /&gt;
    btnDisplay.Click += new System.EventHandler(btnDisplay_Click);&lt;br /&gt;
    txtDisplay = new TextBox();&lt;br /&gt;
    txtDisplay.Parent = this;&lt;br /&gt;
    txtDisplay.Location = new Point(btnDisplay.Left, btnDisplay.Bottom + 10);&lt;br /&gt;
    txtDisplay.Multiline = true;&lt;br /&gt;
    txtDisplay.ReadOnly = true;&lt;br /&gt;
    txtDisplay.BackColor = Color.LightGray;&lt;br /&gt;
    txtDisplay.ScrollBars = ScrollBars.Vertical;&lt;br /&gt;
    txtDisplay.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
    txtDisplay.Size = new Size(cmb.DropDownWidth, 200);&lt;br /&gt;
    &lt;br /&gt;
    btnSelect = new Button();&lt;br /&gt;
    btnSelect.Parent = this;&lt;br /&gt;
    btnSelect.Text = &amp;quot;&amp;amp;Select 4&amp;quot;;&lt;br /&gt;
    btnSelect.Size = new Size((int)(Font.Height * .75) * btnSelect.Text.Length, cmb.Height);&lt;br /&gt;
    btnSelect.Location = new Point(btnDisplay.Right + 10, btnDisplay.Top);&lt;br /&gt;
    btnSelect.Click += new System.EventHandler(btnSelect_Click);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;A&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;B&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;C&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;D&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;E&amp;quot;);                        &lt;br /&gt;
    cmb.SelectedIndex = 0;   &lt;br /&gt;
  }&lt;br /&gt;
  static void Main() &lt;br /&gt;
  {&lt;br /&gt;
    Application.Run(new ComboBoxes());&lt;br /&gt;
  }&lt;br /&gt;
  private void this_Load(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    cmb.TextChanged += new EventHandler(cmb_TextChanged);&lt;br /&gt;
    cmb.SelectedIndexChanged += new EventHandler(cmb_SelectedIndexChanged);&lt;br /&gt;
  }&lt;br /&gt;
  private void cmb_TextChanged(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (!boolProcessed)&lt;br /&gt;
      lblEdit.Text = cmb.Text;&lt;br /&gt;
    boolChange = true;&lt;br /&gt;
  }    &lt;br /&gt;
  private void cmb_SelectedIndexChanged(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (boolChange)&lt;br /&gt;
    {&lt;br /&gt;
      boolChange = false;&lt;br /&gt;
      boolProcessed = false;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  private void cmb_SelectionChangeCommitted(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (boolChange)&lt;br /&gt;
      ProcessChange();&lt;br /&gt;
  }    &lt;br /&gt;
  private void cmb_Leave(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (boolChange)&lt;br /&gt;
    {&lt;br /&gt;
      ProcessChange();&lt;br /&gt;
      boolChange = false;&lt;br /&gt;
    }&lt;br /&gt;
  }    &lt;br /&gt;
  private void ProcessChange()&lt;br /&gt;
  {&lt;br /&gt;
    lblEdit.Text = &amp;quot;Edited: &amp;quot; + cmb.Text;&lt;br /&gt;
    boolProcessed = true;&lt;br /&gt;
  }&lt;br /&gt;
  private void btnDisplay_Click(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    string str = DateTime.Now.ToString() + &amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    foreach (object item in cmb.Items)&lt;br /&gt;
    {&lt;br /&gt;
      str += item.ToString() + &amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    txtDisplay.Text = str;&lt;br /&gt;
  }    &lt;br /&gt;
  private void btnSelect_Click(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    cmb.Select(1,2);&lt;br /&gt;
  }    &lt;br /&gt;
  private void btnInsert_Click(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (cmb.FindStringExact(cmb.Text) != -1)&lt;br /&gt;
    {&lt;br /&gt;
      MessageBox.Show(&amp;quot;&amp;quot;&amp;quot; + cmb.Text + &amp;quot;&amp;quot; already exists in the list.\r\n&amp;quot; + &lt;br /&gt;
          &amp;quot;Will not be added again.&amp;quot;,&lt;br /&gt;
          &amp;quot;Already Exists!&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    else if (cmb.Text == &amp;quot;&amp;quot;)&lt;br /&gt;
    {&lt;br /&gt;
      MessageBox.Show(&amp;quot;There is nothing to add.&amp;quot;,&amp;quot;Nothing There&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      cmb.Items.Add(cmb.Text);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.SelectedIndexChanged==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;   &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
&lt;br /&gt;
public class Test : Form {&lt;br /&gt;
 &lt;br /&gt;
  private RadioButton square = new RadioButton();&lt;br /&gt;
  private RadioButton circle = new RadioButton();&lt;br /&gt;
  private ComboBox color = new ComboBox();&lt;br /&gt;
 &lt;br /&gt;
  private Color c = Color.Red;&lt;br /&gt;
 &lt;br /&gt;
  public Test( ) {&lt;br /&gt;
    Text = &amp;quot;Select Item&amp;quot;;&lt;br /&gt;
    square.Text = &amp;quot;Square&amp;quot;;&lt;br /&gt;
    circle.Text = &amp;quot;Circle&amp;quot;;&lt;br /&gt;
    color.Text = &amp;quot;Choose a color&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
    Size = new Size(400,250);&lt;br /&gt;
 &lt;br /&gt;
    int w = 20;&lt;br /&gt;
    square.Location = new Point(w, 30);&lt;br /&gt;
    circle.Location = new Point(w += 10 + square.Width, 30);&lt;br /&gt;
    color.Location = new Point(w += 10 + circle.Width, 30);&lt;br /&gt;
 &lt;br /&gt;
    color.Items.Add(&amp;quot;Red&amp;quot;);&lt;br /&gt;
    color.Items.Add(&amp;quot;Green&amp;quot;);&lt;br /&gt;
    color.Items.Add(&amp;quot;Blue&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
    Controls.Add(square);&lt;br /&gt;
    Controls.Add(circle);&lt;br /&gt;
    Controls.Add(color);&lt;br /&gt;
 &lt;br /&gt;
    square.CheckedChanged += new EventHandler(Checked_Changed); &lt;br /&gt;
    circle.CheckedChanged += new EventHandler(Checked_Changed); &lt;br /&gt;
    color.SelectedIndexChanged += new EventHandler(Selected_Index); &lt;br /&gt;
  }&lt;br /&gt;
 &lt;br /&gt;
  protected override void OnPaint(PaintEventArgs e){&lt;br /&gt;
    Graphics g = e.Graphics;&lt;br /&gt;
    Brush brush = new SolidBrush(c);&lt;br /&gt;
    if (square.Checked)&lt;br /&gt;
      g.FillRectangle(brush,100,100,100,100);&lt;br /&gt;
    else&lt;br /&gt;
      g.FillEllipse(brush,100,100,100,100);&lt;br /&gt;
    base.OnPaint( e );&lt;br /&gt;
  }&lt;br /&gt;
 &lt;br /&gt;
  protected void Selected_Index(Object sender, EventArgs e){&lt;br /&gt;
    if (color.SelectedItem.ToString() == &amp;quot;Red&amp;quot; )&lt;br /&gt;
      c = Color.Red;&lt;br /&gt;
    else if (color.SelectedItem.ToString() == &amp;quot;Green&amp;quot;)&lt;br /&gt;
      c = Color.Green;&lt;br /&gt;
    else&lt;br /&gt;
      c = Color.Blue;&lt;br /&gt;
    Invalidate();&lt;br /&gt;
  }&lt;br /&gt;
 &lt;br /&gt;
  protected void Checked_Changed(Object sender, EventArgs e) {&lt;br /&gt;
    Invalidate();&lt;br /&gt;
  }&lt;br /&gt;
  static void Main() {&lt;br /&gt;
    Application.Run(new Test());&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.SelectedItem==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class Select : Form {&lt;br /&gt;
  private Button draw = new Button();&lt;br /&gt;
  private ComboBox color = new ComboBox();&lt;br /&gt;
  public Select( ) {&lt;br /&gt;
    draw.Text = &amp;quot;Draw&amp;quot;;&lt;br /&gt;
    color.Text = &amp;quot;Choose a color&amp;quot;;&lt;br /&gt;
    Size = new Size(500,250);&lt;br /&gt;
    int w = 20;&lt;br /&gt;
    draw.Location = new Point(20,30);&lt;br /&gt;
    color.Location = new Point(w += 10 + color.Width, 30);&lt;br /&gt;
    color.Items.Add(&amp;quot;Red&amp;quot;);&lt;br /&gt;
    color.Items.Add(&amp;quot;Green&amp;quot;);&lt;br /&gt;
    color.Items.Add(&amp;quot;Blue&amp;quot;);&lt;br /&gt;
    Controls.Add(draw);&lt;br /&gt;
    Controls.Add(color);&lt;br /&gt;
    draw.Click += new EventHandler(Draw_Click);&lt;br /&gt;
  } &lt;br /&gt;
  protected void Draw_Click(Object sender, EventArgs e) {&lt;br /&gt;
    if (color.SelectedItem.ToString() == &amp;quot;Red&amp;quot; )&lt;br /&gt;
      Console.WriteLine(&amp;quot;It is red.&amp;quot;);&lt;br /&gt;
    else if (color.SelectedItem.ToString() == &amp;quot;Green&amp;quot;)&lt;br /&gt;
      Console.WriteLine(&amp;quot;It is green.&amp;quot;);&lt;br /&gt;
    else&lt;br /&gt;
      Console.WriteLine(&amp;quot;It is blue.&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  static void Main() {&lt;br /&gt;
    Application.Run(new Select());&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==ComboBox.SelectionChangeCommitted==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;  &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
public class ComboBoxes : Form&lt;br /&gt;
{&lt;br /&gt;
  ComboBox cmb;&lt;br /&gt;
  Button btnDisplay;&lt;br /&gt;
  Button btnInsert;&lt;br /&gt;
  Button btnSelect;&lt;br /&gt;
  Label lblEdit;&lt;br /&gt;
  TextBox txtDisplay;&lt;br /&gt;
  Boolean boolChange = false;&lt;br /&gt;
  Boolean boolProcessed = false;&lt;br /&gt;
  public ComboBoxes()&lt;br /&gt;
  {&lt;br /&gt;
    Size = new Size(300,400);&lt;br /&gt;
    this.Load += new EventHandler(this_Load);&lt;br /&gt;
    cmb = new ComboBox();&lt;br /&gt;
    cmb.Parent = this;&lt;br /&gt;
    cmb.Location = new Point(10,10);&lt;br /&gt;
    cmb.Size = new Size(ClientSize.Width / 2, Height - 200);&lt;br /&gt;
    cmb.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right | AnchorStyles.Bottom;&lt;br /&gt;
    cmb.DropDownStyle = ComboBoxStyle.DropDown;    &lt;br /&gt;
    cmb.DropDownStyle = ComboBoxStyle.Simple;&lt;br /&gt;
    cmb.DropDownWidth = (int)(cmb.Width * 1.5);&lt;br /&gt;
    cmb.MaxDropDownItems = 12;&lt;br /&gt;
    cmb.MaxLength = 20;&lt;br /&gt;
    cmb.SelectionChangeCommitted += new EventHandler(cmb_SelectionChangeCommitted);&lt;br /&gt;
    cmb.Leave += new EventHandler(cmb_Leave);&lt;br /&gt;
    btnInsert = new Button();&lt;br /&gt;
    btnInsert.Parent = this;&lt;br /&gt;
    btnInsert.Text = &amp;quot;&amp;amp;Insert Item&amp;quot;;&lt;br /&gt;
    btnInsert.Size = new Size((int)(Font.Height * .75) * btnInsert.Text.Length, cmb.Height);&lt;br /&gt;
    btnInsert.Location = new Point(cmb.Right + 10, cmb.Top);&lt;br /&gt;
    btnInsert.Click += new System.EventHandler(btnInsert_Click);&lt;br /&gt;
    lblEdit = new Label();&lt;br /&gt;
    lblEdit.Parent = this;&lt;br /&gt;
    lblEdit.BorderStyle = BorderStyle.Fixed3D;&lt;br /&gt;
    lblEdit.Location = new Point(cmb.Left, cmb.Bottom + 10);&lt;br /&gt;
    lblEdit.BackColor = Color.LightGray;&lt;br /&gt;
    lblEdit.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
    lblEdit.Size = new Size(cmb.DropDownWidth, Font.Height * 2);&lt;br /&gt;
    btnDisplay = new Button();&lt;br /&gt;
    btnDisplay.Parent = this;&lt;br /&gt;
    btnDisplay.Text = &amp;quot;&amp;amp;Display Items&amp;quot;;&lt;br /&gt;
    btnDisplay.Size = new Size((int)(Font.Height * .75) * btnDisplay.Text.Length, cmb.Height);&lt;br /&gt;
    btnDisplay.Location = new Point(lblEdit.Left, lblEdit.Bottom + 10);&lt;br /&gt;
    btnDisplay.Click += new System.EventHandler(btnDisplay_Click);&lt;br /&gt;
    txtDisplay = new TextBox();&lt;br /&gt;
    txtDisplay.Parent = this;&lt;br /&gt;
    txtDisplay.Location = new Point(btnDisplay.Left, btnDisplay.Bottom + 10);&lt;br /&gt;
    txtDisplay.Multiline = true;&lt;br /&gt;
    txtDisplay.ReadOnly = true;&lt;br /&gt;
    txtDisplay.BackColor = Color.LightGray;&lt;br /&gt;
    txtDisplay.ScrollBars = ScrollBars.Vertical;&lt;br /&gt;
    txtDisplay.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
    txtDisplay.Size = new Size(cmb.DropDownWidth, 200);&lt;br /&gt;
    &lt;br /&gt;
    btnSelect = new Button();&lt;br /&gt;
    btnSelect.Parent = this;&lt;br /&gt;
    btnSelect.Text = &amp;quot;&amp;amp;Select 4&amp;quot;;&lt;br /&gt;
    btnSelect.Size = new Size((int)(Font.Height * .75) * btnSelect.Text.Length, cmb.Height);&lt;br /&gt;
    btnSelect.Location = new Point(btnDisplay.Right + 10, btnDisplay.Top);&lt;br /&gt;
    btnSelect.Click += new System.EventHandler(btnSelect_Click);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;A&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;B&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;C&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;D&amp;quot;);&lt;br /&gt;
      cmb.Items.Add(&amp;quot;E&amp;quot;);                        &lt;br /&gt;
    cmb.SelectedIndex = 0;   &lt;br /&gt;
  }&lt;br /&gt;
  static void Main() &lt;br /&gt;
  {&lt;br /&gt;
    Application.Run(new ComboBoxes());&lt;br /&gt;
  }&lt;br /&gt;
  private void this_Load(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    cmb.TextChanged += new EventHandler(cmb_TextChanged);&lt;br /&gt;
    cmb.SelectedIndexChanged += new EventHandler(cmb_SelectedIndexChanged);&lt;br /&gt;
  }&lt;br /&gt;
  private void cmb_TextChanged(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (!boolProcessed)&lt;br /&gt;
      lblEdit.Text = cmb.Text;&lt;br /&gt;
    boolChange = true;&lt;br /&gt;
  }    &lt;br /&gt;
  private void cmb_SelectedIndexChanged(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (boolChange)&lt;br /&gt;
    {&lt;br /&gt;
      boolChange = false;&lt;br /&gt;
      boolProcessed = false;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  private void cmb_SelectionChangeCommitted(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (boolChange)&lt;br /&gt;
      ProcessChange();&lt;br /&gt;
  }    &lt;br /&gt;
  private void cmb_Leave(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (boolChange)&lt;br /&gt;
    {&lt;br /&gt;
      ProcessChange();&lt;br /&gt;
      boolChange = false;&lt;br /&gt;
    }&lt;br /&gt;
  }    &lt;br /&gt;
  private void ProcessChange()&lt;br /&gt;
  {&lt;br /&gt;
    lblEdit.Text = &amp;quot;Edited: &amp;quot; + cmb.Text;&lt;br /&gt;
    boolProcessed = true;&lt;br /&gt;
  }&lt;br /&gt;
  private void btnDisplay_Click(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    string str = DateTime.Now.ToString() + &amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    foreach (object item in cmb.Items)&lt;br /&gt;
    {&lt;br /&gt;
      str += item.ToString() + &amp;quot;\r\n&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    txtDisplay.Text = str;&lt;br /&gt;
  }    &lt;br /&gt;
  private void btnSelect_Click(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    cmb.Select(1,2);&lt;br /&gt;
  }    &lt;br /&gt;
  private void btnInsert_Click(object sender, EventArgs e)&lt;br /&gt;
  {&lt;br /&gt;
    if (cmb.FindStringExact(cmb.Text) != -1)&lt;br /&gt;
    {&lt;br /&gt;
      MessageBox.Show(&amp;quot;&amp;quot;&amp;quot; + cmb.Text + &amp;quot;&amp;quot; already exists in the list.\r\n&amp;quot; + &lt;br /&gt;
          &amp;quot;Will not be added again.&amp;quot;,&lt;br /&gt;
          &amp;quot;Already Exists!&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    else if (cmb.Text == &amp;quot;&amp;quot;)&lt;br /&gt;
    {&lt;br /&gt;
      MessageBox.Show(&amp;quot;There is nothing to add.&amp;quot;,&amp;quot;Nothing There&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
    {&lt;br /&gt;
      cmb.Items.Add(cmb.Text);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==extends ComboBox==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;  &lt;br /&gt;
/*&lt;br /&gt;
Revised from cdoe &lt;br /&gt;
Visual C# 2005 Recipes A Problem-Solution Approach&lt;br /&gt;
# By Allen Jones&lt;br /&gt;
Matthew MacDonald&lt;br /&gt;
Rakesh Rajan&lt;br /&gt;
# ISBN: 1590595890&lt;br /&gt;
# ISBN-13: 9781590595893&lt;br /&gt;
# 592 pp.&lt;br /&gt;
# Published: Jan 2006&lt;br /&gt;
*/&lt;br /&gt;
using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public partial class ComboBoxHolder : Form&lt;br /&gt;
{&lt;br /&gt;
    public ComboBoxHolder()&lt;br /&gt;
    {&lt;br /&gt;
        this.SuspendLayout();&lt;br /&gt;
        this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);&lt;br /&gt;
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;&lt;br /&gt;
        this.ClientSize = new System.Drawing.Size(292, 266);&lt;br /&gt;
        this.Name = &amp;quot;ComboBoxHolder&amp;quot;;&lt;br /&gt;
        this.Text = &amp;quot;ComboBoxHolder&amp;quot;;&lt;br /&gt;
        this.ResumeLayout(false);&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
    protected override void OnLoad(EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        base.OnLoad(e);&lt;br /&gt;
        AutoCompleteComboBox combo = new AutoCompleteComboBox();&lt;br /&gt;
        combo.Location = new Point(10, 10);&lt;br /&gt;
        this.Controls.Add(combo);&lt;br /&gt;
        combo.Items.Add(&amp;quot;word&amp;quot;);&lt;br /&gt;
        combo.Items.Add(&amp;quot;world&amp;quot;);&lt;br /&gt;
        combo.Items.Add(&amp;quot;wording&amp;quot;);&lt;br /&gt;
        combo.Items.Add(&amp;quot;worse&amp;quot;);&lt;br /&gt;
        &lt;br /&gt;
    }&lt;br /&gt;
    [STAThread]&lt;br /&gt;
    public static void Main(string[] args)&lt;br /&gt;
    {&lt;br /&gt;
        Application.Run(new ComboBoxHolder());&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
public class AutoCompleteComboBox : ComboBox&lt;br /&gt;
{&lt;br /&gt;
    private bool controlKey = false;&lt;br /&gt;
    protected override void OnKeyPress(System.Windows.Forms.KeyPressEventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        base.OnKeyPress(e);&lt;br /&gt;
        if (e.KeyChar == (int)Keys.Escape)&lt;br /&gt;
        {&lt;br /&gt;
            this.SelectedIndex = -1;&lt;br /&gt;
            this.Text = &amp;quot;&amp;quot;;&lt;br /&gt;
            controlKey = true;&lt;br /&gt;
        } else if (Char.IsControl(e.KeyChar)) {&lt;br /&gt;
            controlKey = true;&lt;br /&gt;
        } else {&lt;br /&gt;
            controlKey = false;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    protected override void OnTextChanged(System.EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        base.OnTextChanged(e);&lt;br /&gt;
        if (this.Text != &amp;quot;&amp;quot; &amp;amp;&amp;amp; !controlKey)&lt;br /&gt;
        {&lt;br /&gt;
            string matchText = this.Text;&lt;br /&gt;
            int match = this.FindString(matchText);&lt;br /&gt;
            if (match != -1)&lt;br /&gt;
            {&lt;br /&gt;
                this.SelectedIndex = match;&lt;br /&gt;
                this.SelectionStart = matchText.Length;&lt;br /&gt;
                this.SelectionLength = this.Text.Length - this.SelectionStart;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>