none
ListBox, Nao consigo resolver RRS feed

  • Pergunta

  • ola, estou a alimentar uma listbox com um datset , faço um select à bd k retorna varios campos e faço o seguinte

    SisFood.Business.BRL.

    BebidasBRL bebidasBRL = new SisFood.Business.BRL.BebidasBRL();

    lstBebidas.DisplayMember =

    "CODIGO_BEBIDAS";

    lstBebidas.DisplayMember =

    "DESC_BEBIDAS";

    lstBebidas.DataSource = bebidasBRL.BuscaBebidas().Tables[0];

    ";

    so que eu queria mostar dois campos na listbox e nao so 1 como faço aqui .so que nao estou a conseguir.como posso fazer isso?
    • Movido Levi Domingos quarta-feira, 14 de setembro de 2011 17:40 (De:C#)
    segunda-feira, 12 de setembro de 2011 01:00

Todas as Respostas

  • Por que não usar ListView com duas colunas?
    segunda-feira, 12 de setembro de 2011 01:29
  • Boa noite...

    Como foi passado anteriormente segue...

    http://msdn.microsoft.com/pt-br/library/system.windows.forms.listbox.multicolumn(v=vs.90).aspx

    Testei aqui e está ok....


    Eder dos Santos Silva Analista Programador Pleno Portfólio: http://www.ederssilva.com.br
    segunda-feira, 12 de setembro de 2011 01:36
  • vou colocar a minha aplicação completa para voce dar uma olhada, cara preciso muito resolver isso!

    using System;

    using System.Linq;

    using System.Collections.Generic;

    using System.ComponentModel;

    using System.Data;

    using System.Drawing;

    using System.Text;

    using System.Windows.Forms;

    using System.Data.SqlServerCe;

     

    namespace SisFood

    {

        public partial class frmBebibdas : Form

        {

            int _numeroMesa; 

     

            public frmBebibdas()

            {

                InitializeComponent();

                _numeroMesa = TransportaDados.NumeroMesa;

            }

     

            private void cmdAdicionar_Click(object sender, EventArgs e)

            {

                SisFood.Business.DTO.BebidasDTO bebidasDTO = new SisFood.Business.DTO.BebidasDTO();

                bebidasDTO.ChBebidas = Convert.ToInt32(lstBebidas.SelectedValue.ToString());

                bebidasDTO.NrMesa = Convert.ToInt32(lblMesa.Text);

                bebidasDTO.QtdeBebidas = Convert.ToInt32(txtQuantidade.Text);

     

                SisFood.Business.BRL.VendasBRL vendasBRL = new SisFood.Business.BRL.VendasBRL();

                if (vendasBRL.InsertBebidas(bebidasDTO))

                    lblMensagem.Text = "Inserido com sucesso";

     

            }

     

            private void frmBebibdas_Load(object sender, EventArgs e)

            {

     

     

     

                lblMesa.Text = _numeroMesa.ToString();

                lblMensagem.Text = "";

                preencherList();

            }

     

            private void preencherList()

            {

     

                SisFood.Business.BRL.BebidasBRL bebidasBRL = new SisFood.Business.BRL.BebidasBRL();

                lstBebidas.DisplayMember = "DESC_BEBIDAS";

                lstBebidas.DisplayMember = "CODIGO_BEBIDAS";

                lstBebidas.ValueMember = "CH_BEBIDAS";            

                lstBebidas.DataSource = bebidasBRL.BuscaBebidas().Tables[0];

     

     

            }

     

            private void txtQuantidade_GotFocus(object sender, EventArgs e)

            {

                lblMensagem.Text = "";

    segunda-feira, 12 de setembro de 2011 01:48
  • Então Segue como Ficaria para preencher o ListBox

    SisFood.Business.BRL.BebidasBRL bebidasBRL = new SisFood.Business.BRL.BebidasBRL();
                lstBebidas.HorizontalScrollbar = true;
                foreach (DataRow linha in bebidasBRL.BuscaBebidas().Tables[0].Rows)
                {
                    lstBebidas.Items.AddRange(new object[]
                                                    {
                                                        linha["DESC_BEBIDAS"] + " , " + linha["CODIGO_BEBIDAS"]
                                                    }
                                              );
                }
                lstBebidas.MultiColumn = true;
    

    Aqui usei um DataTable e funcionou certinho...


     


    Eder dos Santos Silva Analista Programador Pleno Portfólio: http://www.ederssilva.com.br
    segunda-feira, 12 de setembro de 2011 02:10
  • Eder estou começando a ver uma luz, mais eo seguinte deu erro na compilação por causa desses cara aqui.! porque sera? uso visual team studio 2008, dei um coment no seu site, gostei muito bom!

     

     lstBebidas.HorizontalScrollbar 

    lstBebidas.Items.AddRange(new object[]

    lstBebidas.MultiColumn = true; 

    segunda-feira, 12 de setembro de 2011 02:19
  • Então acredito que não seja problemas do VS2008 não pois até no site deles eles colocam que 

    funcionam desde o Framework 1.0 muito estranho....

    Sobre o comentário no Blog valew mesmo..


    Eder dos Santos Silva Analista Programador Pleno Portfólio: http://www.ederssilva.com.br
    segunda-feira, 12 de setembro de 2011 02:30
  • Eder o erro diz que não tem definições para HorizontalScrollbar e nao existem metados para HorizontalScrollbar. e esse erro!


    Error 1 'System.Windows.Forms.ListBox' does not contain a definition for 'HorizontalScrollbar' and no extension method 'HorizontalScrollbar' accepting a first argument of type 'System.Windows.Forms.ListBox' could be found (are you missing a using directive or an assembly reference?) C:\Projeto em Andamento\SisFood\SisFood\frmBebibdas.cs 48 24 SisFood

    segunda-feira, 12 de setembro de 2011 02:36
  • Eder sabe que reparei, estou criando  para pocket pc, quando crio um form o addRange aparece, ele SmartFhone nao, porque sera?
    segunda-feira, 12 de setembro de 2011 02:53