none
Atualizar Gridview com resultado de seleção múltipla do Listbox RRS feed

  • Pergunta

  • Olá Pessoal,

    Gostaria da ajuda de vocês para meu problema.

    Tenho um Listbox, alimentado por um datasource e que contém diversos valores, onde o usuário pode selecionar vários valores. Após ele selecionar, tenho um botão que gera um "refresh" no gridview, considerando os valores selecionados no Listbox, mas mesmo com diversos valores selecionados, o refresh só considera o último clicado e não todos os que estão selecionados...

    No comando SQL do datasource na cláusula where está o critério "IN" para selecionar varios valores.

    O parametro de pesquisa está configurado pelo assistente do ASP.NET, sendo que usei a opção de Parameter Source = Control e o ControlID = <listbox>...

    Alguém já passou por isso e pode dar uma ajuda, se possível com algum exemplo?


    segunda-feira, 28 de janeiro de 2013 18:12

Respostas

  • Olá,

    Acredito que o problema esteja na forma com que você está recuperando os valores selecionados na listBox.

    A propriedade SelectedValue e derivados só retorna um item da lista. Para recuperar todos os que estão selecionados, é preciso fazer um loop e verificar um a um por meio da propriedade Selected do item iterado, exemplo:

    foreach (ListItem item in lbxTeste.Items)
    {
        if (item.Selected)
        {
          //concatenar ou separar em uma lista os item.Value para passar o parâmetro da sua query
        }
    }

    terça-feira, 29 de janeiro de 2013 23:01