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
Gestire undefined e partial nelle reactive forms di Angular
Sostituire la GitHub Action di login su private registry
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Utilizzare le collection expression in C#
Elencare le container images installate in un cluster di Kubernetes
Trasformare qualsiasi backend in un servizio GraphQL con Azure API Management
Assegnare un valore di default a un parametro di una lambda in C#
Ottimizzazione dei block template in Angular 17
Usare il versioning con i controller di ASP.NET Core Web API
Creazione di componenti personalizzati in React.js con Tailwind CSS
Gestire i null nelle reactive form tipizzate di Angular
Code scanning e advanced security con Azure DevOps
I più letti di oggi
- Utilizzare WebAssembly con .NET, ovunque
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
- Utilizzare il trigger SQL con le Azure Function
- Disabilitare automaticamente un workflow di GitHub (parte 2)
- Paginare i risultati con QuickGrid in Blazor
- Ottimizzazione dei block template in Angular 17