Jump to content

POWERED BY:

Archived

This topic is now archived and is closed to further replies.

DaniloTec

[Resolvido] Pegar valor do checkboxlist selecionado

Recommended Posts

Bom dia.

 

Tenho um CheckBoxList populado e não sei como faço pra pegar o valor que foi selcionado. E não quero pegar todos os valores selecionados, eu quero pegar o valor que foi selecionado na hora do click.

 

Os CheckBoxList1.SelectedValue e CheckBoxList1.SelectedItem.value não funcionam. Quanto eu seleciono o primeiro registro da lista ele me retorna o valor correto, porém, quando eu seleciono o segunto ele me retorna o valor do primeiro ainda.

 

Eu preciso pegar o valor do item que foi selecionado e não todos que estão selecionado.

 

Eu resolvi isso com Javascript, porém gostaria de uma solução C#.

 

Vlw!

Share this post


Link to post
Share on other sites

Isso não dá certo. Se eu selecionar mais de 2 valores ele retorna o primeiro do mesmo jeito.

 

 

DaniloTec,

 

Do jeito que o quintelab escreveu dá certo sim, talvez você não tenha notado uma pequena diferença do código que você escreveu para o dele, veja:

 

Você escreveu:

CheckBoxList1.SelectedValue e CheckBoxList1.SelectedItem.value

quintelab escreveu:

bool primeiroSelecionado = CheckBoxList1.Items[0].Selected;
bool segundoSelecionado = CheckBoxList1.Items[1].Selected;

Veja que a diferença está no na palavra Items[ ]. Do jeito que você fez inicialmente realmente, você pode checar todos os itens que ele retornará somente o primeiro e para retornar todos os checados você precisa percorrer todos os itens do CheckBoxList através de um for e verificar um a um se está checado ou não.

 

Assim:

for (int i = 0; i < CheckBoxList1.Items.Count; i++)
{
    if (CheckBoxList1.Items[i].Selected)
    {
        //Recupera o valor através do CheckBoxList1.Items[i].Value;
    }
}

 

 

Espero ter ajudado!

Share this post


Link to post
Share on other sites

Vocês ainda não entederam. Eu só quero pegar o valor do checkbox que eu clicar. Mesmo que já existam outros checados eu só quero pegar o que eu checkei na hora do click. Eu não quero a lista toda, eu só quero o que eu cliquei na hora, mesmo que já existam outros checados.

Desse jeito ele me retorna a lista de checados e não é isso que eu quero, quero só o que eu cliquei.

 

Guys, encontrei exatamente o que eu precisava.

 

Clique aqui

 

Vlw!!!

Share this post


Link to post
Share on other sites

Desculpe me intrometer na sua lógica, mas não teria sido mais fácil usar um CheckBox ao invés de um CheckBoxList? Daí você capturaria pelo evento CheckedChanged.

 

Só pra entender, pq realmente não tinha entendido anteriormente.

Share this post


Link to post
Share on other sites

Isso daria certo também, mas acredito que seria trocar 6 por meia dúzia.

Se eu colocasse um CheckBox eu teria que colocar ele dentro de um laço, construir os controles, atribuir os valores e adicioná-los a um Panel.

Acho que dá no mesmo, mas de qualquer forma, encontrei outra forma de se fazer as coisas. :)

Share this post


Link to post
Share on other sites

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.