none
Como inserir valor padrão ao DropDownlist RRS feed

  • Pergunta

  • Olá;

    Gostaria de inserir no dropdownlist um valor padrão do tipo "selecione"

    alguém poderia ajudar nesta situação ?

    grande abraço
    segunda-feira, 3 de agosto de 2009 17:56

Respostas

  • Nas propriedades do DropDonw marca a opção.
    AppendDataBoundItems="True"
    E colocar o Selecione no Edit Items..

    Só Deus Salva O resto Faz BACKUP
    • Marcado como Resposta Harley Araujo quarta-feira, 5 de agosto de 2009 12:46
    segunda-feira, 3 de agosto de 2009 18:59
  • Ola raffademello,


    Não sei se você está preenchendo este dropdownlist dinamicamente, por exemplo buscando os dados de um banco de dados, ou ele esta estático. Por isso vou demonstrar as duas formas.

    Estático:

    <asp:DropDownList ID="ddl" runat="server">
      <asp:ListItem Value="0" Text="Selecione" Selected="True"></asp:ListItem>
      <asp:ListItem Value="1" Text="Opcao 1"></asp:ListItem>
      <asp:ListItem Value="2" Text="Opcao 2"></asp:ListItem>
      <asp:ListItem Value="3" Text="Opcao 3"></asp:ListItem>
    </asp:DropDownList>

    Mas se você está preenchendo dinamicamente, pode fazer assim:

    protected void preencheDropDownList()
    {
          int cont = 0;
    
          // o "selecione" estara sendo mostrado, pois o primeiro item do dropdownlist sempre é mostrado como default
          ddl.Items.Add("---Selecione-----");
          ddl.Items[0].Value = "0";
    
          cont++;
    
          while (cont < 4)
          {
            ddl.Items.Add("Opcao " + cont);
            ddl.Items[cont].Value = cont.ToString();
            cont++;
          }
    }



    Só altere para o nome dos seus controles é claro.

    Se ficar alguma dúvida no código é só perguntar.


    Atenciosamente


    Se a resposta for útil marque como tal

    Thiago Dorneles
    • Marcado como Resposta Harley Araujo quarta-feira, 5 de agosto de 2009 12:47
    segunda-feira, 3 de agosto de 2009 18:53

Todas as Respostas

  • Ola,


    Explique melhor o que deseja.

    Como assim valor padrão? Você quer que o valor já venha selecionado, é isso?


    Atenciosamente
    Thiago Dorneles
    segunda-feira, 3 de agosto de 2009 17:58
  • Exatamente, pois este dropdownlist está puxando dados do access.

    Quero que apareça o texto "Selecione" antes dos valores do access...precisa ser o primeiro item.


    segunda-feira, 3 de agosto de 2009 18:13
  •  

    public static void PreencherDropDown(DataTable dt, DropDownList ddl, string value, string text, string textoPadrao)
    {

    ddl.DataTextField = text;
    ddl.DataValueField = value;
    ddl.DataSource = dt;
    ddl.DataBind();
    ddl.Items.Insert(0, textoPadrao);

    }

    Para chamar o metodo acima:
    PreencherDropDown(dtSeuDataTable, ddlSeuDropDown, "CampoValor", "CampoTexto", "Selecione...");




    Ajuda?


    Gabriel-P
    • Editado Gabriel Perroni segunda-feira, 3 de agosto de 2009 18:14 Errei a chamada...
    segunda-feira, 3 de agosto de 2009 18:14
  • Na tela do aspx você coloca o seguinte código

    <asp:DropDownList ID="ddlTipo" runat="server">
                      </asp:DropDownList>

    depois no aspx.cs

    using System;
    using System.Collections.Generic;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                HdOcorrencia tipo = new HdOcorrencia();
                string[,] tipos = tipo.buscaTodosTipos();
    
                ListItem item = new ListItem();
                item.Value = "";
                item.Text = "Selecione...";
                ddlTipo.Items.Add(item);
    //aqui voce pode colocar os seus dados
                for (int i = 0; i < tipos.GetLength(0); i++)
                {
                    ListItem itens = new ListItem();
                    itens.Value = tipos[i, 0].Trim();
                    itens.Text = tipos[i, 1].Trim();
                    ddlTipo.Items.Add(itens);
                }
    //até aqui
    
            }
        }
    }

    assim você consegue colocar um valor default e depois colocar outros valores dinamicamente

    certo?

    att,


    Leonardo B. Moreira - Web Developer .net with asp.net and C# - I know, it is only programmer but I like it.
    segunda-feira, 3 de agosto de 2009 18:34
  • Boa Leonardo,

    eu sou hobista e quando mecho em .net
    eu alimento dropdowns da maneira que você faz
    segunda-feira, 3 de agosto de 2009 18:43
  • Ola raffademello,


    Não sei se você está preenchendo este dropdownlist dinamicamente, por exemplo buscando os dados de um banco de dados, ou ele esta estático. Por isso vou demonstrar as duas formas.

    Estático:

    <asp:DropDownList ID="ddl" runat="server">
      <asp:ListItem Value="0" Text="Selecione" Selected="True"></asp:ListItem>
      <asp:ListItem Value="1" Text="Opcao 1"></asp:ListItem>
      <asp:ListItem Value="2" Text="Opcao 2"></asp:ListItem>
      <asp:ListItem Value="3" Text="Opcao 3"></asp:ListItem>
    </asp:DropDownList>

    Mas se você está preenchendo dinamicamente, pode fazer assim:

    protected void preencheDropDownList()
    {
          int cont = 0;
    
          // o "selecione" estara sendo mostrado, pois o primeiro item do dropdownlist sempre é mostrado como default
          ddl.Items.Add("---Selecione-----");
          ddl.Items[0].Value = "0";
    
          cont++;
    
          while (cont < 4)
          {
            ddl.Items.Add("Opcao " + cont);
            ddl.Items[cont].Value = cont.ToString();
            cont++;
          }
    }



    Só altere para o nome dos seus controles é claro.

    Se ficar alguma dúvida no código é só perguntar.


    Atenciosamente


    Se a resposta for útil marque como tal

    Thiago Dorneles
    • Marcado como Resposta Harley Araujo quarta-feira, 5 de agosto de 2009 12:47
    segunda-feira, 3 de agosto de 2009 18:53
  • Mas este código é em C# ??
    segunda-feira, 3 de agosto de 2009 18:54
  • Mas este código é em C# ??

    Sim.
    Thiago Dorneles
    segunda-feira, 3 de agosto de 2009 18:55
  • Nas propriedades do DropDonw marca a opção.
    AppendDataBoundItems="True"
    E colocar o Selecione no Edit Items..

    Só Deus Salva O resto Faz BACKUP
    • Marcado como Resposta Harley Araujo quarta-feira, 5 de agosto de 2009 12:46
    segunda-feira, 3 de agosto de 2009 18:59
  • Thiago,
    ta certinho o seu tbm

    eu prefiro trabalhar da forma que eu postei acima
    trabalhando mais diretamente com objetos
    mais a sua também achei muito boa

    abraço,
    Leonardo B. Moreira - Web Developer .net with asp.net and C# - I know, it is only programmer but I like it.
    segunda-feira, 3 de agosto de 2009 19:08
  • Qual o efeito colateral se eu usar o método do Apostolo ?

    Tiago

    Quando eu clico duas vezes no dropdownlist aparece (na Master Page .vb)

    Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged
           
        End Sub


    Eu posso inserir o seu código dentro desse Protected sub  ? ou não posso por causa do "SelectedIndexChanged" ?
    como posso mudar ? é só digitar para o comando desejado ?

    Leonardo, ainda não desenvolvo sistemas em C#, mas obrigado pela contribuição.
    segunda-feira, 3 de agosto de 2009 19:14
  • Qual o efeito colateral se eu usar o método do Apostolo ?

    Tiago

    Quando eu clico duas vezes no dropdownlist aparece (na Master Page .vb)

    Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged
           
        End Sub


    Eu posso inserir o seu código dentro desse Protected sub  ? ou não posso por causa do "SelectedIndexChanged" ?
    como posso mudar ? é só digitar para o comando desejado ?
    Ola,


    Este evento protected SelectedIndexChanged é executado quando vo trocar a seleção do drop down list, ou seja, quando você trocar, por exemplo, neste evento pode-se chamar outro método ou controle de visibilidade. Um exemplo mais especifico para isto, ocorre em diversos formulários de cadastros que você seleciona um estado, e a partir daí é populado as cidades, entedeu?!

    Mas não coloque este código dentro deste protected, coloque na page_load, ou em um botão. Faça o mesmo procedimento, insira o botão e de dois cliques sobre ele, irá aparecer um outro evento, daí você coloca o código.

    Caso você precise converter códigos c# para vb, ou mesmo o contrário, segue um link:
    http://www.developerfusion.com/tools/convert/csharp-to-vb/


    Atenciosamente

    Thiago Dorneles
    segunda-feira, 3 de agosto de 2009 19:55
  • Thiago,
    ta certinho o seu tbm

    eu prefiro trabalhar da forma que eu postei acima
    trabalhando mais diretamente com objetos
    mais a sua também achei muito boa

    abraço,
    Leonardo B. Moreira - Web Developer .net with asp.net and C# - I know, it is only programmer but I like it.

    Ola Leonardo,

    Eu também concordo em trabalhar com objetos como no seu exemplo, mas escrevi um código simples, para melhor entendimento do raffademello .

    Não adianta dizer para ele user um ListItem por exemplo, se talvez ele nem saiba o que é.

    Somente fiz um exemplo bem simples para bom entendimento.


    Abraços



    Thiago Dorneles
    segunda-feira, 3 de agosto de 2009 19:57
  • Thiago,
    ta certinho o seu tbm

    eu prefiro trabalhar da forma que eu postei acima
    trabalhando mais diretamente com objetos
    mais a sua também achei muito boa

    abraço,
    Leonardo B. Moreira - Web Developer .net with asp.net and C# - I know, it is only programmer but I like it.

    Ola Leonardo,

    Eu também concordo em trabalhar com objetos como no seu exemplo, mas escrevi um código simples, para melhor entendimento do raffademello .

    Não adianta dizer para ele user um ListItem por exemplo, se talvez ele nem saiba o que é.

    Somente fiz um exemplo bem simples para bom entendimento.


    Abraços



    Thiago Dorneles
    segunda-feira, 3 de agosto de 2009 20:01
  • Eu usei justamente um listItem, usei o método do Apostolo

    "Nas propriedades do DropDonw marca a opção.
    AppendDataBoundItems ="True"
    E colocar o Selecione no Edit Items.."

    Não sei se tem algum efeito colateral, mas deu certo, da forma mais simples, pois ainda não tenho conhecimento avançado.

    Obrigado a todos pelas contribuições !
    segunda-feira, 3 de agosto de 2009 20:17
  • Ola Thiago,

    eu tenho uma dúvida que não consegui resolver com os códigos que estão aqui, será que poderia me ajudar?

    Estou adaptando um gerenciador de conteúdo para um site e após utilizo um dropdownlist no administrador para escolher qual página editar e depois pra ser apresentado eu tenho ele em uma outra página de teste, depois que salvo no banco eu posso escolher nessa pagina teste qual conteúdo quero mostrar naquela página.

    O que eu preciso é o seguinte, eu quero colocar um dropdownlist em cada pagina do meu site, mas sem que o usuário possa ver ele ou trocar a página, e deixar gravado nele que naquela determinada página ele sempre vai mostrar aquele conteúdo específico atualizado do BD. É possível?

    Atenciosamente,

    Nathalia Santana.

    quinta-feira, 19 de setembro de 2013 12:46