Brug af WP7-statuslinieobjekter

En funktion, som jeg kort berørte i sidste måneds tip af Windows Phone 7 om at lave en nedtællingstimer var brugen af ​​en ProgressBar-kontrol i min Lifter Calculator-app. Fremskridtsbjælker måler typisk et interval "0% - 100%", men der er ingen grund til, at de skal; faktisk er statuslinjekontrollerne i WP7 meget fulde funktioner.

Metoder, egenskaber og brug

WP7-statuslinjen er faktisk to kontroller: ProgressBar-kontrollen og ProgressIndicator-objektet (i dette tip betyder fremdriftslinjen begge objekter som en gruppe). ProgressBar er en ægte kontrol, som du kan placere i din XAML for at blive vist på skærmen, som du synes passer, som en traditionel fremdriftslinje. ProgressIndicator er et objekt, som du kan arbejde med programmatisk, men du kan ikke lægge det i din XAML, fordi det vises af WP7-skallen for at placere en statuslinje i systembakken.

For at oprette et ProgressIndicator-objekt skal du instantisere objektet og derefter kalde SystemTray.SetProgressIndicator og videregive det til din XAML-kodebehind-klasse og ProgressIndicator-objektet:

 var indikator = ny ProgressIndicator 
 { 
 IsVisible = sandt, 
 IsIndeterminate = sandt, 
 Tekst = "Testning!" 
 }; 
 SystemTray.SetProgressIndicator (dette, indikator); 

Sørg for, at du har en "bruger Microsoft.Phone.Shell;" erklæring øverst.

ProgressIndicator har en egenskab, som ProgressBar ikke - egenskaben "Tekst", der viser tekst under ProgressIndicator ( figur A ). Figur A

En ubestemmelig ProgressIndicator med tekst indstillet til "Testing!"
ProgressBar og ProgressIndicator understøtter to tilstande, der kontrolleres af IsIndeterminate-egenskaben. Hvis IsIndeterminate er sandt, ændres ikke statuslinjen fra en værdi til en anden, men viser den generiske "der sker noget" WP7-animation - det vil sige de små prikker, der bevæger sig på tværs af skærmen ( figur B ). Hvis egenskaben er falsk, tillader statuslinjen en værdi, og når værdien er indstillet, udfyldes statuslinjen til at være det rigtige beløb. Så snart du indstiller IsIndeterminate til sand, starter linjen sin animation og stopper den, så snart du indstiller den til falsk. Figur B

En ubestemmelig ProgressBar

En bestemt fremskridtslinje har en værdi, der kan indstilles. Med en ProgressIndicator skal egenskaben Værdi være mellem 0 og 1, hvor 1 er "helt fuld." Med en ProgressBar kan du indstille egenskaberne Minimum og Maximum, og den værdi, du indstiller, skal være mellem disse to tal. Når du ændrer værdi, udfyldes statuslinjen til et passende beløb. Apropos "udfyldning", kan du indstille egenskaben "FlowDirection" til enten "LeftToRight" (standard) eller "RightToLeft"; i LifterCalculator kombinerede jeg "RightToLeft" med en værdi, der gik fra maksimum til minimum for at give udseendet af en bjælke, der tæller ned til nul, men som bevæger mig fra venstre til højre på samme tid.

Og det er alt, hvad der er til det! De to statuslinjekontroller er meget enkle, men giver dig nøjagtigt det, du har brug for. Den eneste ulempe er manglen på en lodret tilstand i de tilfælde, hvor man ville give mening.

J.Ja

© Copyright 2020 | mobilegn.com