locked
Como carregar um listbox usando o Banco isostore RRS feed

  • Pergunta

  • Galera estou com um problema preciso saber como carregar um listbox a partir de uma consulta ao banco e depois preciso excluir o item selecionado no list da base de dados
    domingo, 10 de junho de 2012 19:39

Respostas

  • Fala Luciano,

    Primeiramente você deve saber que o acesso a base local é feito através de LINQ. Sabendo disso, e possuindo um DataContext de seu banco, as operações são tranquilas.

    Para carregar um ListBox, basta fazer a consulta ao banco, e retornar o resultado em uma coleção (pode ser ObservableCollection,List).

    Ex: 

    using(DataContext dc = new DataContext())
    {
       var query = from p in dc.Produto
                   select p;
    
       List<Produto> lista = new List<Produto>(query); 
       listBox1.ItemsSource = lista;
    }


    Para excluir o item selecionado, após o seu trigger definido (clique de um botão, double tap), você pode recuperar o item selecionado e excluí-lo da base.
    Ex:

    var itemSelecionado = listBox1.selectedItem as Produto;
    
    using(DataContext dc = new DataContext())
    {
        var query = dc.Produto.FirstOrDefault(p => p.Id == itemSelecionado.Id);
    
        dc.Produto.DeleteOnSubmit(query);
        dc.SubmitChanges();
    }

    Para ver a mudança é só atualizar o seu ListBox, fazendo uma nova consulta na base.

    Espero que ajude!

    []´s


    segunda-feira, 11 de junho de 2012 13:44