C#
- Criando um UserControl : CheckedComboBox
![]() |
Hoje vamos recordar como criar um controle personalizado na linguagem C#. |
Eu já apresentei este recurso neste artigo: C# - Criando Controles Personalizados (User Control)
E hoje veremos como criar um controle que herda do controle ComboBox. Vamos criar um controle que é um combobox com um checkedbox.
Para isso vamos criar um novo projeto para Windows do tipo Desktop no VS 2019 Community chamado WF_CheckedCombobox usando a linguagem C#:
A seguir vamos incluir um projeto do tipo Windows Forms Control Library que vamos chamar de CheckedCombobox neste projeto Windows Forms usando o menu File -> Add Project:
No projeto CheckedCombobox vamos criar uma classe CheckComboBox com o código abaixo:
using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; using System.Windows.Forms.VisualStyles;
namespace CheckedComboBox
private string _data;
public ComboboxData(string value, bool ischeck)
public override string ToString()
public CheckComboBox()
public List<ComboboxData> CheckItems
protected override void OnSelectedIndexChanged(EventArgs
e)
if (Checkchanged != null)
if (Items[e.Index] is ComboboxData) |
Esta classe herda da classe ComboBox e implementa um checkedbox que permite a seleção.
Agora compile o projeto e retorne para o projeto Windows Forms e abra o formulário Form1.cs:
Você verá que ToolBox o controle CheckComboBox aparece e pode ser arrastado para o formulário:
A seguir inclua o código abaixo no formulário Form1.cs para testar:
using CheckedComboBox;
using System.Windows.Forms;
namespace WF_CheckedComboBox
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
CheckComboBoxControl();
}
private void CheckComboBoxControl()
{
checkComboBox1.Items.Add(new CheckComboBox.ComboboxData("Macoratti", true));
checkComboBox1.Items.Add(new CheckComboBox.ComboboxData("Curso Blazor", false));
checkComboBox1.Items.Add(new CheckComboBox.ComboboxData("Curso ASP .NET Core", true));
checkComboBox1.Items.Add(new CheckComboBox.ComboboxData("Curso Web API Essencial", true));
}
}
}
|
Executando o projeto iremos obter:
Fique à vontade para implementar mais recursos...
Pegue o código
completo do projeto aqui:
WF_CheckedComboBox.zip
"(Disse
Jesus)Passará o céu e a terra, mas as minhas palavras não hão de passar."
Lucas 21:33
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
C# - StreamReader, StringReader e TextReader . Qual a ... - Macoratti
C# - Imprimindo um arquivo texto - Macoratti
C# - Usando OpenFileDialog - Macoratti
C# - Formatando arquivos textos - Macoratti
C# - Convertendo valores para o formato monetário
C# - Lendo e escrevendo em arquivos textos e binários - Macoratti
VB.NET - Conversão entre tipos de variáveis - Macoratti
C# - Localizando Arquivos - Macoratti