none
Processar arquivo .txt RRS feed

  • Pergunta

  • Boa tarde, fórum! Td certo?

    Tenho uma aplicação da qual preciso processar 3 tipos de arquivos de cada vez ou eles todos de uma vez. Por exemplo, na ComboBox tem ".extensão1", ".extensão2", ".extensão3" e "Todas". Pensei da seguinte forma, atribuir um inteiro a cada opção e a todas o número "4" e caso "Todas" fosse escolhido ia incrementando de 1 a 4 e ia processando todos os tipos. Minha dúvida é: como faço para atribuir um inteiro a uma opção ComboBox? e se essa seria a solução mais adequada para "Todas" funcionar. 

    segunda-feira, 1 de agosto de 2016 18:36

Respostas

  • Filipe, boa tarde!

    Utilize a propriedade "ValueMember" do Combobox.

    Segue um exemplo:

    private void PopularComboBox()
    {
       DataTable table = new DataTable("table");
       table.Columns.Add(new DataColumn("texto"));
       table.Columns.Add(new DataColumn("valor"));
    
       DataRow row = table.NewRow();
       row["texto"] = "Extensão 1";
       row["valor"] = 1;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Extensão 2";
       row["valor"] = 2;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Extensão 3";
       row["valor"] = 3;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Todos";
       row["valor"] = 4;
       table.Rows.Add(row);
    
       comboBox.DataSource = table;
       comboBox.ValueMember = "valor";
       comboBox.DisplayMember = "texto";
    }

    Qualquer dúvida, estou a disposição.

    Att.

    Felipe

    segunda-feira, 1 de agosto de 2016 18:57

Todas as Respostas

  • Filipe, boa tarde!

    Utilize a propriedade "ValueMember" do Combobox.

    Segue um exemplo:

    private void PopularComboBox()
    {
       DataTable table = new DataTable("table");
       table.Columns.Add(new DataColumn("texto"));
       table.Columns.Add(new DataColumn("valor"));
    
       DataRow row = table.NewRow();
       row["texto"] = "Extensão 1";
       row["valor"] = 1;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Extensão 2";
       row["valor"] = 2;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Extensão 3";
       row["valor"] = 3;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Todos";
       row["valor"] = 4;
       table.Rows.Add(row);
    
       comboBox.DataSource = table;
       comboBox.ValueMember = "valor";
       comboBox.DisplayMember = "texto";
    }

    Qualquer dúvida, estou a disposição.

    Att.

    Felipe

    segunda-feira, 1 de agosto de 2016 18:57
  • Filipe, boa tarde!

    Utilize a propriedade "ValueMember" do Combobox.

    Segue um exemplo:

    private void PopularComboBox()
    {
       DataTable table = new DataTable("table");
       table.Columns.Add(new DataColumn("texto"));
       table.Columns.Add(new DataColumn("valor"));
    
       DataRow row = table.NewRow();
       row["texto"] = "Extensão 1";
       row["valor"] = 1;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Extensão 2";
       row["valor"] = 2;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Extensão 3";
       row["valor"] = 3;
       table.Rows.Add(row);
    
       row = table.NewRow();
       row["texto"] = "Todos";
       row["valor"] = 4;
       table.Rows.Add(row);
    
       comboBox.DataSource = table;
       comboBox.ValueMember = "valor";
       comboBox.DisplayMember = "texto";
    }

    Qualquer dúvida, estou a disposição.

    Att.

    Felipe

    Um detalhe que esqueci de citar é que minha ComboBox vem do próprio banco de dados. Este é o código que fiz para preencher a CBO e também para adicionar a opção todas.

                'Instacia um DataSet
                Dim ds As DataSet = New DataSet()
                Dim dt As DataTable = New DataTable()
    
                'Preenche o DataAdapter
                da.Fill(dt)
                cboOrigemDados.DisplayMember = "descricao_origem_dados"
                cboOrigemDados.ValueMember = "pk_origem_dados"
                cboOrigemDados.DataSource = dt
    
                'Adicionando opção TODAS na combobox
                Dim dr As DataRow
                dr = dt.Rows.Add
                dr("pk_origem_dados") = 0
                dr("descricao_origem_dados") = "Todas as subestações"
                dr("pk_origem_dados") = "Todas as subestações"
                cboOrigemDados.DisplayMember = "pk_origem_dados" & "descricao_origem_dados"
                cboOrigemDados.ValueMember = "descricao_origem_dados"
                cboOrigemDados.DataSource = dt


    segunda-feira, 1 de agosto de 2016 19:10
  • Bom dia Filipe Lobato,

    Você conseguiu utilizar o exemplo de felipe022 ?

    No seu caso, utilizar um enum para popular sua combobox seria uma opção?

    Atenciosamente,


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quarta-feira, 3 de agosto de 2016 14:10
    Moderador
  • Bom dia,

    Devido a falta de resposta do usuário

    essa thread está sendo fechada.

    Se o problema ainda estiver ocorrendo,

    favor abrir uma nova thread.

    Atenciosamente,


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    segunda-feira, 8 de agosto de 2016 12:31
    Moderador