La oss fortsette med Windows Phone 7.5 Mango Apps Development tutorial serien! I vår tidligere opplæring så vi på strengmanipulering og alle måtene vi kan gjøre i.NET Class-biblioteket. Du vil ofte jobbe med dato og klokkeslett, så denne leksjonen fokuserer på å jobbe med DateTime klasse, arbeider med datatidsmat, formatering dato og mye mer.
Så la oss komme i gang!
Akkurat som vår tidligere leksjon, skal vi skape et nytt prosjekt med et unikt navn. I designvinduet skal vi ha en knapp i venstre øverste hjørne og en tekstblock under den (se bilde).
DateTime myValue = DateTime.Now;
myTextBlock.Text = myValue.ToString ();
Første linjen lager et objekt av DateTime-klassen som heter myValue. Objektets verdi er satt til DateTime. Nå slik at det blir verdien av dato og klokkeslett i denne nåværende forekomsten. Dato og klokkeslett som er lagret, er basert på telefonens regionale dato og klokkeslett. Den andre linjen viser bare den i TextBlock. Husk, TextBlock. Tekstattributtet er av String-datatype, derfor konverterer vi ut DateTime-verdien til String ved hjelp av ToString () -metoden. Det er så enkelt som det blir i arbeid med grunnleggende DateTime.
1. myTextBlock.Text = myValue.ToShortDateString ();
Denne setningen viser bare datoen i et kort datoformat, f.eks. Dd / mm / åååå eller mm / dd / yyyy, avhengig av telefonens regionale datoinnstillinger. F.eks 03/01/2012
2. myTextBlock.Text = myValue.ToShortTimeString ();
I denne setningen bruker vi metoden ToShortTimeString () for å vise bare tiden. F.eks 1:06
3. myTextBlock.Text = myValue.ToLongDateString ();
I denne utsagnet viser ToLongDateString () -metoden ukedag etterfulgt av dato i tall, måned i alfabeter og år i tall. F.eks Torsdag 1. mars 2012.
Nå, hva hvis du ønsket å vise datoen etter å trekke tre dager fra nå? For å bære matte på DateTime-objekter har DateTime-klassen mange metoder. I vårt tilfelle skal vi bruke metoden AddDays () med en parameterverdi som -3. Resultatet vil være 02/27/2012 eller 27/02/2012 avhengig av telefonens regionale DateTime-innstillinger.
myTextBlock.Text = myValue.AddDays (-3).ToShortDateString ();
Hvis du måtte legge til dager, ville du bruke et positivt heltall som en parameterverdi til AddDays () -metoden. På samme måte kan du utføre matematikk på Time-delen av DateTime ved å bruke metoder som AddHours (), AddMinutes (), etc. Legg merke til hvordan vi kjeder metoder sammen.
myTextBlock.Text = myValue.AddDays (3).ToShortDateString ();
myTextBlock.Text = myValue.AddHours (3).ToShortTimeString ();
Fortsett, antar at du måtte jobbe med bare en del av datoen, sier du ønsket å jobbe med måneden da kan du gjøre noe sånt
myTextBlock.Text = myValue.Month.ToString ();
Legg merke til at Måned returnerer en heltallverdi, og derfor bruker vi metoden ToString () til å vise den i TextBlock. Tilsvarende kan du få tilgang til en rekke attributter som dag, ukedag, dag i år, sekunder, minutter, timer, etc.
La oss nå se på et TimeSpan-objekt. En TimeSpan er ikke en bestemt dato, men snarere er tidsforløpet mellom to datoer eller tid. Så hvis du ønsket å vite din alder, kunne du gjøre noe sånt.
TimeSpan myAge = DateTime.Now.Subtract (myBirthday);
myTextBlock.Text = myAge.ToString ();
Metoden Subtract () har en returtype TimeSpan-type. Du kan bruke en kombinasjon av egenskaper og metoder for å oversette utgangen vist i antall år, måneder, dager, timer, minutter og sekunder.
Det er det for dette settet med opplæringen; Du kan finne mer informasjon om DateTime og TimeSpan ved å besøke MSDN.
I vår neste opplæring vil vi lære om å forstå og skape klasser … til da … ta vare på! 🙂