none
[RESOLVIDO] DropDownList Com Preenchimento Automático de um Campo (Mês Atual) RRS feed

  • Pergunta

  • Olá amigos, 

    Estou tentando fazer com que um DropDownList que criei apareça o mês atual que estamos automaticamente assim que fizer o Page Load.

    Tenho um List com meses de 1 a 12 e os anos, de 2009 a 2014. Quando acesso a página, aparece já setado o ano, que deixei para que apareça 2012, pois o ano demora muito mais pra passar que um mês, e o mês eu gostaria que quando fizesse o page load, já viesse preenchido com o mês atual.

    Alguém me dá uma luz de como fazer isso? Eu programava em java, e quando precisava fazer algo do tipo, era só usar o getDate() e ai fazer a configuração. Mas em C# não consigo achar uma saída.

    Fico no aguardo de uma forcinha ai galera.

    Abraços!


    Cleverson Darsie


    segunda-feira, 20 de agosto de 2012 13:11

Respostas

  • É isso aqui que vc ta procurando tucão?

     mes.SelectedValue = DateTime.Now.Month.ToString();


    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCTS

    • Marcado como Resposta Cleverson Darsie segunda-feira, 20 de agosto de 2012 13:59
    segunda-feira, 20 de agosto de 2012 13:50

Todas as Respostas

  • Ola Cleverson

        Basta usar o DateTime.Today.Mouth e pro ano o DateTime.Today.Year

    Ate mais


    Microsoft Community Contributor

    segunda-feira, 20 de agosto de 2012 13:17
    Moderador
  • faz assim

    datetime dataatual = date.now;

    string mes = convert.toString(dataatual.substring(8,2));

    string ano = convert.toString(dataatual.substring(0,4));

    ai vc passa para sua consulta que preenche os dropdownlist;


    Junior

    segunda-feira, 20 de agosto de 2012 13:23
  • Ola Junior, 

    No caso, não há consulta que preencha o mês, estão predefinidos os valores dos meses já, segue abaixo o código:

    <asp:DropDownList ID="mes" runat="server" CssClass="input">
                        <asp:ListItem Value=""></asp:ListItem>
                        <asp:ListItem Value="1">Janeiro</asp:ListItem>
                        <asp:ListItem Value="2">Fevereiro</asp:ListItem>
                        <asp:ListItem Value="3">Março</asp:ListItem>
                        <asp:ListItem Value="4">Abril</asp:ListItem>
                        <asp:ListItem Value="5">Maio</asp:ListItem>
                        <asp:ListItem Value="6">Junho</asp:ListItem>
                        <asp:ListItem Value="7">Julho</asp:ListItem>
                        <asp:ListItem Value="8">Agosto</asp:ListItem>
                        <asp:ListItem Value="9">Setembro</asp:ListItem>
                        <asp:ListItem Value="10">Outubro</asp:ListItem>
                        <asp:ListItem Value="11">Novembro</asp:ListItem>
                        <asp:ListItem Value="12">Dezembro</asp:ListItem>
                    </asp:DropDownList>

    No caso atual, quando abro a página, aparece em branco, e aí seleciono manualmente. Mas como já falei antes, quero que carregue automaticamente o mês atual.

    E aqui está meu page load com a parte que carrega o DropDownList.

     if (!Page.IsPostBack)
                {
                    GridView1.EmptyDataText = "";
                    LbSessao.Text = (string)Session["Retorno_Login_NomeCliente"];
                    Page.SetFocus((DropDownList)(mes));
                }

    Não consigo imaginar como fazer ainda.


    Cleverson Darsie

    segunda-feira, 20 de agosto de 2012 13:35
  • tenta fazer assim então :

    dropdownlist1.dataTextfield = "ano";

    dropdownlist1.dataValuefield = "ano";

    dropdownlist.databind();


    Junior


    • Editado Junior_luiz segunda-feira, 20 de agosto de 2012 13:44
    segunda-feira, 20 de agosto de 2012 13:40
  • É isso aqui que vc ta procurando tucão?

     mes.SelectedValue = DateTime.Now.Month.ToString();


    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCTS

    • Marcado como Resposta Cleverson Darsie segunda-feira, 20 de agosto de 2012 13:59
    segunda-feira, 20 de agosto de 2012 13:50
  • Junior, 

    Veja se está correto o que estou fazendo:


    .c#

     if (!Page.IsPostBack)
                {
                    GridView1.EmptyDataText = "";
                    LbSessao.Text = (string)Session["Retorno_Login_NomeCliente"];
    
                    DateTime atual = DateTime.Now;
                    string mes1 = Convert.ToString(atual.Month);
                    mes.DataTextField = mes1;
                    string ano1 = Convert.ToString(atual.Year);
                    ano.DataTextField = ano1;
    
                    Page.SetFocus((DropDownList)(mes));
                }


    E o .aspx

    <td class="ColunaCampoFormulario" nowrap="nowrap">
                    <asp:DropDownList ID="mes" runat="server" CssClass="input">
                        <asp:ListItem Value=""></asp:ListItem>
                        
                    </asp:DropDownList>
                </td>

    Deixei o ListItem do mês vazio para receber o valor do mês atual.
    Na hora que rodei, ficou vazio.....


    Cleverson Darsie

    segunda-feira, 20 de agosto de 2012 13:53
  • Janderson, 

    O que você me passou funcionou perfeitamente.

    Vou fazer o mesmo para o ano.

    Obrigado!


    Cleverson Darsie

    segunda-feira, 20 de agosto de 2012 13:59
  • Você quer deixar na Drop dos meses o mês atual(agosto no nosso caso) selecionado certo?

    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCTS

    segunda-feira, 20 de agosto de 2012 14:01