CRIAR UM MÉTODO PULICO PARA PREENCHER COMBOBOX
boa noite amigos,
gostaria de criar uma classe onde possa aproveitar um método para preencher o combobox em varios forms, este método vai conter os códigos e descrição das CST possÃveis. eu quero herdar esses valores para meu combo que estará no form.
gostaria de criar uma classe onde possa aproveitar um método para preencher o combobox em varios forms, este método vai conter os códigos e descrição das CST possÃveis. eu quero herdar esses valores para meu combo que estará no form.
Você pode trabalhar com herança (herda e acrescenta o que você pretende), ou então usar os métodos de extensão para isso.
http://msdn.microsoft.com/pt-br/library/bb383977.aspx
http://msdn.microsoft.com/pt-br/library/bb383977.aspx
Jaba dei uma olhada no link que você postou, mas como estou iniciando meus estudos algumas coisas pra mim ainda não são tão claras, poderia por favor me dar algum exemplo ou dar uma explicação pra ignorante no assunto...rs, valeu, até mais.
Samuca faz assim:
1- Cria na sua solution um novo projeto de Biblioteca (DLL que conterá recursos para todo seu projeto principal)
2- Nela coloca esse código
3- Faz referência dessa biblioteca no seu projeto e quando quiser carregar a combo faz assim:
4- Não esquece que tem de ter a BLL e DAL para carregar a combo e povoar o DataSource da combo com ele. Para isso uso uma Entidade (classe) com a estrutura (nome, ID) igual a tabela do seu banco, simples assim. Para cada combo que quiser incluir, cria um novo item no Switch
1- Cria na sua solution um novo projeto de Biblioteca (DLL que conterá recursos para todo seu projeto principal)
2- Nela coloca esse código
namespace MinhaBiblioteca
{
public partial class ClasseAcoesForms
{
public static void CarregaCombo(ComboBox myCbo, string mySituacao) // mySituação é([Ô]Ativos[Ô], [Ô]Inativos[Ô], ou [Ô]Todos[Ô]) os registros da tabela
{
switch (myCbo.Name) // Aqui uso Switch pois esse método é válido para carregar qualquer combo no projeto
{
case [Ô]cboAutor[Ô]: //Nome da Combo
FuncionarioBLL objAutor = new FuncionarioBLL(); //Crio instância para carregar a combo
myCbo.DisplayMember = [Ô]NOME[Ô]; //Nome do campo (banco) que tem o texto a exibir na combo
myCbo.ValueMember = [Ô]IDFUNCIONARIO[Ô]; //Nome do campo (banco) com o ID do texto
//Abaixo método para preencher combo com dado. Esse método vem da classe BLL/DAL que faz a busca no banco
myCbo.DataSource = objAutor.CarregaCombo(mySituacao);
myCbo.SelectedIndex = -1; //setar combo limpa sem nenhum registro selecionado
myCbo.Refresh();
break;
case [Ô]cboDepartamentos[Ô]:
DepartamentosBLL objDepartamentos = new DepartamentosBLL();
myCbo.DisplayMember = [Ô]NOME[Ô];
myCbo.ValueMember = [Ô]IDDEPTO[Ô];
myCbo.DataSource = objDepartamentos.CarregaCombo(mySituacao);
myCbo.SelectedIndex = -1;
myCbo.Refresh();
break;
}
}
}
}
3- Faz referência dessa biblioteca no seu projeto e quando quiser carregar a combo faz assim:
ClasseAcoesForms.CarregarCombo(nomeDaCombo, [Ô]Ativos[Ô]);
4- Não esquece que tem de ter a BLL e DAL para carregar a combo e povoar o DataSource da combo com ele. Para isso uso uma Entidade (classe) com a estrutura (nome, ID) igual a tabela do seu banco, simples assim. Para cada combo que quiser incluir, cria um novo item no Switch
bom dia Luis,
no meu caso não teria uma tabela, teria que ser um método ou estrutura pré definida, com os CST existentes, tipo assiM:
102 - [Ô]tributado sem permissão de crédito[Ô]
500 - [Ô]operação com substuição tributária[Ô]
....
assim por diante, como não conheço muito os recursos no C#, não quero fazer quebra galho que aprender a usar a ferramenta da maneira correta.
mas desde já perfeito sua orientação e exemplo, vou aproveita-lo se puder dar mais alguma dica agradeço.
no meu caso não teria uma tabela, teria que ser um método ou estrutura pré definida, com os CST existentes, tipo assiM:
102 - [Ô]tributado sem permissão de crédito[Ô]
500 - [Ô]operação com substuição tributária[Ô]
....
assim por diante, como não conheço muito os recursos no C#, não quero fazer quebra galho que aprender a usar a ferramenta da maneira correta.
mas desde já perfeito sua orientação e exemplo, vou aproveita-lo se puder dar mais alguma dica agradeço.
Luis Herrera, obrigado meu amigo com sua ajuda consegui fazer o que eu precisava, Deus abençoe.
Tópico encerrado , respostas não são mais permitidas