Atualizado em January 2025: Pare de receber mensagens de erro que tornam seu sistema mais lento, utilizando nossa ferramenta de otimização. Faça o download agora neste link aqui.
- Faça o download e instale a ferramenta de reparo aqui..
- Deixe o software escanear seu computador.
- A ferramenta irá então reparar seu computador.
Deixe-nos continuar com a série tutorial de desenvolvimento de aplicações Mango 7.5 do Windows Phone! Em nosso tutorial anterior, olhamos para a manipulação de strings e todas as maneiras que podemos fazer isso na biblioteca de classes .net. Muitas vezes você estará trabalhando com data e hora, então esta lição foca em trabalhar com o
DateTime class
trabalhando com Matemática de Data e Hora, formatando DateTime e muito mais.
Por isso vamos começar!
Tal como na lição anterior, vamos criar um novo projeto com um nome único. Na janela de design teremos um Botão no canto superior esquerdo e um TextBlock abaixo dele (Ver imagem).
Agora vamos adicionar algum código C# para o evento Button’s Click. Copie as seguintes linhas de código no evento de clique do seu botão.
DateTime myValue = DateTime.Now;
myTextBlock.Text = myValue.ToString();
A Primeira linha cria um objeto da classe DateTime chamado myValue. O valor do objeto é definido como DateTime. Agora para que ele obtenha o valor de data e hora nesta instância atual. O valor de data e hora armazenado é baseado nas configurações regionais de data e hora do telefone. A Segunda linha apenas a exibe no TextBlock. Lembre-se, o TextBlock. O atributo Text é do tipo String data type, portanto convertemos o valor DateTime para String usando o método ToString(). Isso é tão fácil quanto entrar trabalhando com DateTime básico.
Agora e se você quiser exibir apenas a Data e excluir a hora? Felizmente, há uma série de métodos disponíveis na classe DateTime que lhe permitirá exibir a data e/ou hora em um formato específico. Vamos dar uma olhada nesses métodos e na saída que eles geram.
1. myTextBlock.Text = myValue.ToShortDateString();(Alaska)
Esta instrução exibe apenas a Data em um formato de data curta, ou seja, dd/mm/aaaaaa ou mm/dd/dd/aaaaa dependendo das configurações regionais de hora de data do telefone. Por exemplo, 03/01/2012
2. myTextBlock.Text = myValue.ToShortTimeString();(Alaska)
Neste comando utilizamos o método ToShortTimeString() para mostrar apenas o tempo. E.g. 1:06 PM
3. myTextBlock.Text = myValue.ToLongDateString();(Alaska)
Agora e se você quiser exibir a data depois de subtrair 3 dias a partir de agora? A fim de levar nossa matemática em objetos DateTime a classe DateTime tem um monte de métodos. No nosso caso vamos usar o método AddDays() com um valor de parâmetro como -3. O resultado seria 27/02/2012 ou 27/02/2012 dependendo das configurações regionais do DateTime do telefone. Se você tivesse que adicionar dias então você usaria um inteiro positivo como valor de parâmetro para o método AddDays(). Da mesma forma, você pode executar matemática na parte Time do DateTime usando métodos como AddHours(), AddMinutes(), etc. Note como nós encadeamos métodos juntos. Moving on, suponha que você teve que trabalhar com apenas uma parte da data dizendo que queria trabalhar com o mês, então você poderia fazer algo assim Notice that Month returns an integer value and hence we use the ToString() method to display it in the TextBlock. Da mesma forma, você pode acessar um número de atributos como Dia, Dia da Semana, Dia do Ano, Segundos, Minutos, Horas, etc. Agora vamos dar uma olhada em um objeto TimeSpan. Um TimeSpan não é uma data específica, mas sim o intervalo de tempo entre duas datas ou hora. Então, se você quisesse saber sua idade, você poderia fazer algo assim. O método Subtract() tem um tipo de retorno do tipo TimeSpan. Você pode usar uma combinação de propriedades e métodos para traduzir a saída mostrada no número de anos, meses, dias, horas, minutos e segundos. Isso é tudo para este conjunto de tutorial; você pode encontrar mais informações sobre DateTime e TimeSpan visitando MSDN. No nosso próximo tutorial, aprenderemos sobre como compreender e criar aulas…até lá … tome cuidado! 🙂 Diego Gomes é um usuário apaixonado do Windows 10 que adora resolver problemas específicos do Windows e escrever sobre as tecnologias Microsoft em geral.myTextBlock.Text = myValue.AddDays(-3).ToShortDateString();
myTextBlock.Text = myValue.AddDays(3).ToShortDateString();
myTextBlock.Text = myValue.AddHours(3).ToShortTimeString();
myTextBlock.Text = myValue.Month.ToString();
TimeSpan myAge = DateTime.Now.Now.Subtract(myBirthday);
myTextBlock.Text = myAge.ToString();
RECOMENDADO: Clique aqui para solucionar erros do Windows e otimizar o desempenho do sistema