Raramente le applicazioni più interessanti rimangono circoscritte al dispositivo su cui sono installate: come abbiamo spiegato nel capitolo 2, il vero e proprio trampolino di lancio per la diffusione degli smartphone come dispositivo per le masse è stata la disponibilità di una connessione stabile a Internet, tramite la quale fare in modo che il terminale fosse in costante collegamento con il mondo esterno e con i servizi offerti dalla rete. Nel seguito del libro vedremo come effettuare invocazioni a servizi esterni e quali sono le implicazioni che l'esecuzione su un dispositivo Windows Phone comporta; nel giro di poche pagine saremo in grado di realizzare la nostra prima applicazione in grado di interfacciarsi con il web: un browser personalizzato, come quello in figura 4.14.

Lo XAML necessario per descriverne l'interfaccia è molto semplice e ha il suo cuore pulsante nel codice dell'esempio che segue, in particolare nell'utilizzo del controllo WebBrowser.
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition /> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <TextBlock VerticalAlignment="Center">Url</TextBlock> <TextBox x:Name="url" InputScope="Url" Grid.Column="1" /> <Button Grid.Column="2" Click="Button_Click" Content="Vai!" /> <phone:WebBrowser x:Name="browser" Grid.Row="1" Grid.ColumnSpan="3" /> </Grid>
Esso è il primo oggetto che incontriamo specificatamente pensato per Windows Phone, appartiene all'assembly Microsoft.Phone.Controls e include tutta la logica per visualizzare pagine HTML, siano esse provenienti da indirizzi di rete o salvate localmente nel dispositivo.
Nel nostro caso, una volta che l'utente ha digitato l'indirizzo nel TextBox, non dobbiamo far altro che gestire il clic sul Button per avviare la navigazione verso la pagina richiesta, come nell'esempio:
private void Button_Click(object sender, RoutedEventArgs e) { this.browser.Navigate(new Uri(this.url.Text, UriKind.Absolute)); }
Tramite il metodo Navigate si avvia la richiesta verso la risorsa definita tramite l'Uri. Nella nostra applicazione, probabilmente esso punterà a un indirizzo remoto, ma è possibile comunque referenziare anche un file HTML salvato localmente, ad esempio nell'isolated storage (parleremo in maniera più estesa di questo concetto nel capitolo 8), e utilizzare WebBrowser per mostrarla a video.
Questo script è tratto dal libro 'Sviluppare applicazioni per Windows Phone':
http://books.aspitalia.com/Windows-Phone/
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Esecuzione condizionale dei template nelle pipeline YAML di Azure DevOps
Paginare un elenco con Blazor Server
Utilizzare la libreria FluentValidation per validare formalmente un oggetto .NET
Utilizzare il CSS Grid Model per creare il layout di un sito
A lap around Azure Cognitive Services
Graph API con .NET 5
Aggiungere e rimuovere un tag ad un work item in una pipeline di Azure DevOps
Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
Creare un interceptor per ottimizzare il codice SQL generato da Entity Framework Core
Rinominare tabelle e colonne durante il reverse engineering con EF Core Power Tools
Realizzare animazioni con Blazor Server
Realizzare un oggetto DataList generico in Blazor