none
Como alimentar um text box usando uma combobox? RRS feed

  • Pergunta

  • Bom dia! Senhores e Senhoras.

    Bem ! estou com o seguinte problema espero que alguem possa me ajudar.

    Estou trabalhando com  wcf, silverlight e SQL server 2005 e liguagem C#.

    Sou iniciante e estou com muita dificuldade de assimilar  serviço e cliente, noentanto conseguir popular uma combobox. Acho que o projeto é simples, mas para mim está sendo um tanto complexo.

    Eu tenho uma tabela onde tem ProdutoID, DescricaoProduto, ValorUnitario. A tabela já está com valores preenchidos por EXemplo

    Descricao                    ValorUnitario

    manga                        1,00


    A combobox está alimentada com os valores da coluna descrição  e eu quero que cada vez que um produto seja selecionado ele me mostre o valor unitário na text  box.

    se alguem puder me ajudar eu agradeço.
    sexta-feira, 4 de dezembro de 2009 11:16

Respostas

  • Entre em xaml:

    TextBlock

     

    Text="Descrio do Pedido" FontSize="14"/>

     

     

    <ComboBox x:Name="cboDescricao"

     

    Height="25"

     

    Width="300"

     

    Margin="10,0"

     

    ItemsSource="{Binding}"

     

    SelectionChanged="cboDescricao_SelectionChanged"/>

    crie um evento  chamado SelectionChange clique com botão direito em cima do evento e o código irá aparecer o evento em sua aplicação.


    Agora faça o seguinte código:

     


    private

     

    void cboDescricao_SelectionChanged(object sender, SelectionChangedEventArgs e)

    {

    txtValorUnitario.Text = ((

    Produto)cboDescricao.SelectedItem).ValorUnitario.ToString();

    }

    sexta-feira, 4 de dezembro de 2009 13:51

Todas as Respostas

  • Boas rafalima,

    Mas onde está a sua dificuldade?
    http://www.israelaece.com
    sexta-feira, 4 de dezembro de 2009 11:25
    Moderador
  • Minha dificuldade está em pegar um item selecionado na combobox e passar  o valor unitario para o textbox.
    sexta-feira, 4 de dezembro de 2009 11:40
  • Boas rafalima,

    Tente o seguinte:

    this.TextBox1.Text = this.ComboBox1.SelectedItem.ToString();

    Obs.: Acredito que o forum mais ideal para postar essa duvida é no de Windows Forms.
    http://www.israelaece.com
    sexta-feira, 4 de dezembro de 2009 11:44
    Moderador
  • Obrigaodo Israel pela dica, mas ainda não está funcionando vou passar o pedaço do código.

    Cliente

     

    public void cboProduto()

    {

    webService.populaProdutoAsync(

    "preencherComboboxProduto");

    }

     

    void webService_populaProdutoCompleted(object sender, ServiceWCF.populaProdutoCompletedEventArgs e)

    {

     

    if (e.UserState == "preencherComboboxProduto")

    {

    observableProduto =

    new ObservableCollection<Produto>();

     

    Produto prod = null;

     

    foreach (var itemProduto in e.Result)

    {

    prod =

    new Produto();

    prod.Descricao = itemProduto.Descricao;

    prod.ValorUnitario = itemProduto.ValorUnitario;

    observableProduto.Add(prod);

    }

    cboDescricao.ItemsSource = observableProduto;

    cboDescricao.DisplayMemberPath =

    "Descricao";

     

     

    }

    }

    sexta-feira, 4 de dezembro de 2009 11:56
  • Serviço

    [

    OperationContract]

     

    public List<Produto> populaProduto()

    {

     

    Produto prod = null;

     

    List<Produto> produtoLista = new List<Produto>();

     

    var Selecionar = from dados in db.Produtos orderby dados.Descricao select dados;

     

    foreach (var itemProduto in Selecionar)

    {

    prod =

    new Produto();

    prod.Descricao = itemProduto.Descricao;

    prod.ProdutoID = itemProduto.ProdutoID;

    prod.ValorUnitario = itemProduto.ValorUnitario;

    produtoLista.Add(prod);

    }

     

    return produtoLista;

    }

    sexta-feira, 4 de dezembro de 2009 11:57
  • Este código está sendo usado para popular a combobox que está em xaml em silverlight.

    sexta-feira, 4 de dezembro de 2009 12:00
  • Entre em xaml:

    TextBlock

     

    Text="Descrio do Pedido" FontSize="14"/>

     

     

    <ComboBox x:Name="cboDescricao"

     

    Height="25"

     

    Width="300"

     

    Margin="10,0"

     

    ItemsSource="{Binding}"

     

    SelectionChanged="cboDescricao_SelectionChanged"/>

    crie um evento  chamado SelectionChange clique com botão direito em cima do evento e o código irá aparecer o evento em sua aplicação.


    Agora faça o seguinte código:

     


    private

     

    void cboDescricao_SelectionChanged(object sender, SelectionChangedEventArgs e)

    {

    txtValorUnitario.Text = ((

    Produto)cboDescricao.SelectedItem).ValorUnitario.ToString();

    }

    sexta-feira, 4 de dezembro de 2009 13:51