Combo Box
Em computação, uma caixa de combinação é um elemento de interface gráfica. Um ComboBox, que permite ao usuário escolher uma das várias opções, pode ter duas formas muito diferentes. A forma padrão é a caixa de combinação não editável, que conta com um botão e uma lista suspensa de valores. A segunda forma, chamada de caixa de combinação editável, possui um campo de texto com um pequeno botão confinando-o. O usuário pode digitar um valor no campo de texto ou clique no botão para exibir uma lista drop-down.
List Box
Em computação, uma caixa de listagem é um elemento de interface gráfica. Uma ListBox apresenta ao usuário um grupo de itens, exibidos em uma ou mais colunas. As listas podem ter muitos itens, por isso eles são muitas vezes colocados em painéis de rolagem.
Selected Index Changed
É um evento que ocorre quando um item é alterado.
Mouse Double Click
É um evento no qual é disparado quando o usuário efetua um duplo click no componente;
Exemplo:
Neste exemplo escrevemos um combobox e um listbox que interagem entre si por seus eventos. Lembre-se que não utilizamos em nosso curso o método Design First Code Later, escrevemos o programa usando código dinâmico. Após abrir o projeto no Visual Studio para abrir a unidade de código csharp clique no form, na janela de propriedades, no botão de eventos e de um duplo clique na opção Shown.
C#
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Combobox { public partial class Form1 : Form { // Declara os componentes Label titulo; Label tmusica; Label tcombo; Label tlista; ComboBox combo; ListBox lista; // Declara uma Array de itens string[] itens = {"Satisfaction" , "Paint it Black" , "Wild Horses", "Brown Sugar", "Sympathy for the Devil", "Start Me Up"} ; public Form1() { InitializeComponent(); } private void Form1_Shown(object sender, EventArgs e) { // Adiciona propriedade ao formulario Form1.ActiveForm.Text = "Desenvolvimento Aberto - ComboList"; // Cria componentes titulo = new Label(); tmusica = new Label(); tcombo = new Label(); tlista = new Label(); combo = new ComboBox(); lista = new ListBox(); // Adiciona propriedades ao componentes titulo.Text = "Rolling Stones : "; tmusica.Text = "Música"; tcombo.Text = "Combobox - Escolha uma Opção"; tlista.Text = "ListBox - Duplo click em uma Opção"; combo.Items.AddRange(itens); lista.Items.AddRange(itens); combo.SelectedIndex = 0; lista.SelectedIndex = 0; titulo.Size = new Size (90, 20); tmusica.Size = new Size (200, 20); tcombo.Size = new Size (200, 20); combo.Size = new Size (160, 20); tlista.Size = new Size (200, 20); lista.Size = new Size (160, 90); // Posiciona componentes no formulario titulo.Location = new Point (5, 10); tmusica.Location = new Point (100, 10); tlista.Location = new Point(5, 50); lista.Location = new Point(5, 70); tcombo.Location = new Point(5, 170); combo.Location = new Point(5, 190); // Cria eventos lista.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.lista_MouseDoubleClick); combo.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged); // Adiciona componentes ao formulario Form1.ActiveForm.Controls.Add(titulo); Form1.ActiveForm.Controls.Add(tmusica); Form1.ActiveForm.Controls.Add(tlista); Form1.ActiveForm.Controls.Add(lista); Form1.ActiveForm.Controls.Add(tcombo); Form1.ActiveForm.Controls.Add(combo); } // Evento ocorre quando seleciona um item private void combo_SelectedIndexChanged(object sender, EventArgs e) { Object item = combo.SelectedItem; tmusica.Text = item.ToString(); lista.SelectedIndex = combo.SelectedIndex; } // Evento ocorre quando um duplo click é efetuado private void lista_MouseDoubleClick(object sender, MouseEventArgs e) { Object item = lista.SelectedItem; tmusica.Text = item.ToString(); combo.SelectedIndex = lista.SelectedIndex; } } }