sabato 26 dicembre 2015

FT: Buon Natale e felice anno nuovo




Quest'anno per la prima volta, scrivo dopo il giorno di Natale, non perchè non mi importa più del blog, anzi, la definisco la mia casa sul web, ma perchè quest'anno ho avuto ultimamente degli impegni, tra cui la realizzazione di un grande sogno.

Per me quest'anno è stato un anno speciale, ma soprattutto, questo Natale non lo dimenticherò mai, un regalo speciale, conquistato con tutte le forze, con amore, passione e tenacia.

Quando i sogni si realizzano non c'è cosa più bella.

Il Natale non lo considero come per molte persone, un giorno speciale dove si riceve il regalo, un oggetto, ma come un punto di riflessione per essere più buoni in tale giorno e pensare ad essere buoni nell'anno che verrà.
Lo considero come un giorno speciale, di amore, affetto, e dove si è abbracciati dal calore umano delle persone che ci vogliono bene.
E magari, anche con la tv accesa, che trasmette i film di Natale (soprattutto animazione della Walt Disney ) anche se la tv non piace.


Mi fermerò per qualche giorno, poi riprendo subito dopo la befana, sperando per il nuovo anno di scrivere post riguardante automazione e IOT, ma soprattutto che sia un anno di grandi soddisfazioni.

Auguro a tutti i miei lettori, delle feste gioiose, e soprattutto un 2016 pieno di successi.

martedì 15 dicembre 2015

crystal report delete decimal from string

In Crystal Report se abbiamo un campo di una tabella di tipo string, nel quale troviamo un numero con dei decimali e vogliamo visualizzare il valore senza decimali, tramite le funzioni cstr, truncate e tonumber possiamo risolvere tale situazione.
Qui di seguito un esempio da mettere nella finestra delle formule.

cstr(truncate(tonumber({tabella.campo})),0,'')

lunedì 14 dicembre 2015

Oracle Top

In Oracle tramite la parola chiave ROWNUM possiamo limitare l'utilizzo dei record, simile alla parola chiave top di SQl Server.
Qui di seguito un esempio.


SELECT *
 FROM MiaTabella
 WHERE ROWNUM <50 p="">

venerdì 4 dicembre 2015

Microsoft access 2013 generate sql script create table

Nel caso che dobbiamo generare uno script per la creazione di una tabella esistente in un database Microsoft Access, tramite il management Studio di Microsoft Sql Server, possiamo importare la tabella di access.
Durante la creazione guidata, tramite la fase di selezione tabelle e viste, una volta impostata la tabella di destinazione (può essere anche nuova) tramite il pulsante "Modifica Mapping", nella finestra che viene aperta facciamo click sul pulsante "Modifica Codice Sql" a questo punto avremmo il codice Sql.

martedì 1 dicembre 2015

VB.Net Linq Convert Datatable to Array string

Se abbiamo la necessità di trasformare un datatable ed in particolare una determinata colonna in array di string, il frammento di codice qui di seguito illustra tale tecnica tramite il linguaggio VB.Net e Linq.

Dim risultato = (From dati In MioDataSet.Tables(0).AsEnumerable().Select(Function(r) r.Field(Of String)(0))).ToList()

Come si vede dall'esempio di codice, tramite il parametro 0, si prevede di prendere la prima colonna.


         

venerdì 27 novembre 2015

.Net Windows Phone 8.1 impostare una schermata iniziale e logo

Si riporta l'articolo scritto per il sito http://www.iprogrammatori.it/articoli/programmazione/art_windows-phone-81-impostare-una-schermata_1397.aspx

In questo articolo vediamo come impostare la schermata iniziale con una nostra immagine ed il logo che verrà visualizzato nel dispositivo mobile, il tutto utilizzando le funzionalità ed opzioni offerte dall'ambiente di sviluppo Visual Studio.

Creazione del progetto


Si crea un progetto di tipo Windows Phone, il linguaggio di programmazione è indifferente.

Apriamo Visual Studio 2013, e nella finestra di esplora soluzione (Figura 1 ) facciamo doppio click sulla voce “Package.appmanifest”.


Figura 1 – La finestra Esplora soluzioni.

Dopo aver aperto la finestra di dettaglio del file “Pachage.appmanifest”, dobbiamo fare click sulla voce “Asset Visivi” (figura 2) in questo modo possiamo impostare l’immagine ed il logo per la nostra applicazione. Per le immagini, abbiamo la possibilità di impostarle in diversi formati, questo per i vari dispositivi in cui girerà la nostra applicazione.


Figura 2 – Le impostazioni per la schermata di inizio.

Facciamo click sulla voce “Schermata Iniziale” e poi sulla figura con la dimensione 1152x1920, in particolare dove si trova il pulsante dei tre puntini.
Dobbiamo selezionare un file immagini con dimensione 1152x1920, altrimenti ci verrà visualizzato un avviso, come quello mostrato in figura 3.


Figura 3 – Il messaggio relativo alle informazioni delle dimensioni dell'immagine.


Altrimenti viene visualizzato un messaggio di conferma se sostituire l’immagine presente, come mostrato in figura 4.


Figura 4 – Il messaggio di conferma per l’immagine esistente.

A questo punto se viene effettuato il rilascio sul device, noteremo che nel caricamento dell’applicazione verrà visualizzata la nostra immagine.
 Possiamo modificare anche il logo dell’applicazione, ossia l’immagine che viene rappresentata nel dispositivo tra le app installate o nello store.
Sempre nella pagina Asset Visivi, facciamo click su quello relativo logo quadrato 44x44
A questo punto sempre tramite il pulsante dei tre puntini modifichiamo l’immagine.
I vari formati dei logo, riguardano le varie situazioni, come la visualizzazione nella home per questo conviene modificare tutte le varie voci in modo da avere il logo per ogni situazione.

Conclusione

L'articolo ha voluto introdurre il lettore alle impostazionij dello sviluppo per le applicazioni mobile, in particolare modo nel settare un determato logo e schermata iniziale. La flessibilità dell'ambiente di sviluppo Windows Studio 2013 Express offre all'utilizzatore validi strumenti per realizzare applicazioni mobile di una certa complessità con strumenti che semplificano di molto il lavoro.

mercoledì 25 novembre 2015

Sito per la ricerca del testo nel web

Se siamo scrittori sul web per un sito o per il proprio blog, nel caso che vogliamo verificare se il testo che abbiamo scritto per una notizia o articolo è stato copiato,tramite il seguente sito https://noplag.com/ possiamo effettuare una ricerca su internet, per verificare se il testo  è presente in altri siti.
Dopo aver incollato il testo nell'area di ricerca, tramite il pulsante "Start cheching" verranno visualizzati eventuali risultati.

lunedì 23 novembre 2015

Asp.Net Ajax Maskeditextended data format dd/mm/yyyy

Nel caso che abbiamo un controllo Ajax di tipo MaskedEditExtender e MaskedEditValidator è vogliamo applicare una formattazione di tipo data "dd/MM/yyyy" ad un controllo textbox applicando le barre di formattazione, qui di seguito il relativo utilizzo.

  asp:TextBox ID="txtData" runat="server" CssClass="txtNoBorder" MaxLength="10"
                                                        Width="104px" ValidationGroup="Data">

  cc1:MaskedEditExtender ID="MaskedEditExtender1" runat="server" CultureName="it-IT"
                                                        TargetControlID="txtData" Mask="99/99/9999" MaskType="Date" AcceptNegative="None" />
                                                  cc1:MaskedEditValidator ID="MaskedEditValidator1" runat="server" ControlExtender="MaskedEditExtender1"
                                                         InvalidValueMessage="Inserire una data valida" ControlToValidate="txtData"
                                                        ValidationGroup="Data" />

lunedì 16 novembre 2015

sito su Windows 10

Windows Lover logo


Se state cercando un sito, o meglio un portale, nel quale trovare consigli, trucchi ed articoli sul mondo Windows, il sito Windows Lover http://www.windowslover.it/ contiene tutto ciò che riguarda il sistema operativo più usato al mondo.

domenica 15 novembre 2015

Portale per scaricare gratuitamente immagini

Oggi, vi segnalo un sito nel quale è possibile immagini da utilizzare gratuitamente.
Il portale https://pixabay.com/ offre una vasta raccolta di immagini di vario genere.
Le immagini sono di ottima qualità.
Oltre a cercare l'immagine tramite il motore di ricerca posto nella home page, è possibile visionare le immagini tramite categorie posto nella parte inferiore.
A differenza di molti siti di questo tipo, offre anche la possibilità di scaricare dei video.


sabato 14 novembre 2015

Green City, una città da favola!

Keenergy master distributor per l’Italia dei prodotti WakaWaka è partner del Consorzio di Bacino 16 nel progetto di educazione ambientale per le scuole elementari del suo territorio con il progetto “Green-City, una città da favola! "
Un progetto rivolto alle scuole elementari sul tema dell’ecosostenibilità che prevede l'allestimento di laboratori didattici presso le scuole tenuti da esperti sui temi del risparmio energetico e del corretto riciclo e smaltimento del legno.
Protagonisti di Green-City: la lampada e caricabatteria solare WakaWaka per il risparmio energetico e il legno quale esempio di materiale da riciclo, grazie alla collaborazione con Rilegno.
All’iniziativa hanno aderito le scuole elementari dei 14 Comuni consorziati e precisamente: Borgaro, Mappano, Brandizzo, Brusasco, Caselle Torinese, Castiglione Torinese, Chivasso, Gassino Torinese, Leinì, Montanaro, San Mauro Torinese, Settimo Torinese, Verolengo e Volpiano per un totale di più di 1300 bambini ovvero quasi 70 classi iscritte al progetto.
Un piano di lavoro che si svolgerà nell’anno scolastico 2015/2016, a partire dalla metà del mese di novembre, con l’obiettivo di:
1. Suscitare l’attenzione sulle tematiche inerenti l’energia pulita/solare e sul risparmio della stessa attraverso comportamenti mirati, sugli utilizzi del legno e sul suo conferimento come rifiuto, attraverso un lavoro concreto di avvicinamento tramite i laboratori;
2. indagare e costruire processi di analisi e soluzione dei problemi relativi ai vari contesti individuati come critici;
3. sensibilizzare i bambini al fine di elaborare una nuova coscienza della realtà quotidiana, più consapevole e critica;
4. stimolare un maggior interesse per le materie curriculari pertinenti grazie a un percorso di studio articolato e fuori dallo schema tradizionale.
Il percorso del progetto si articola su 3 fasi:
1) approccio propedeutico attraverso la consultazione degli strumenti presenti sul sito vetrina www.greencity.it (filmati, brochure scaricabile ecc …).
2) percorso di apprendimento e conoscenza della situazione attuale concreta – relativamente ai temi affrontati – e ipotesi di evoluzione attraverso l’attività di laboratorio.
3) elaborazione in classe, da parte dei ragazzi, di una favola sui temi di Green-City e premiazione dei migliori primi 3 elaborati.
Keenergy con WakaWaka attraverso Green-City intende quindi far sì che sempre di più i nostri figli assumano corretti comportamenti ambientali perché non c’è progresso umano che non si basi sull’educazione e sulla formazione.

venerdì 13 novembre 2015

COSMOsmHack iniziativa tecnologica sullo spazio



L'Asi, l'Agenzia Spaziale Italia, in collaborazione con Geos e Bic Lazio, hanno organizzato per il 29 novembre 2015, una simpatica iniziativa tecnologica in tema spazio.
La CosmoSmhack, è una due giorni, nella quale sviluppatori ed informatici, avranno la possibilità di partecipare ad un concorso in cui i partecipanti si sfidano nel realizzare software riguardante dati inerenti lo spazio.
Per partecipare c'è tempo fino al 26 novembre 2015, per maggiori informazioni ed altro visitate il seguente sito http://www.asi.it/it/eventi/workshop/cosmosmhack 


giovedì 12 novembre 2015

Evento gratuito NIDays 2016 #tuttoconnesso

Torna l'evento più atteso per gli utilizzatori della tecnologia National Instruments.
Come riportato qui http://italy.ni.com/nidays il 18 febbraio 2016 si svolgerà l'evento NI Days 2016 a Milano.
Per maggiori informazioni ed iscrizioni visitate il sito indicato.

mercoledì 11 novembre 2015

Risorse grafiche gratuite

Se state cercando un motore di ricerca o portale dove poter scaricare gratuitamente delle immagini, potete utilizzare il sito http://it.freepik.com/ che fornisce una grande offerta di materiale.
Il sito permette di cercare tramite motore di ricerca interno immagini gratuiti oppure divise per categoria.
Un sito ben fornito ed aggiornato.

Ringrazio l'amico Federico per la dritta.

lunedì 9 novembre 2015

C# 2015 le novità inizializzare una proprietà di sola lettura

Altra interessante novità del nuovo linguaggio C# della versione di Visual Studio 2015 è quella di inizializzare una proprietà di sola lettura.

Qui di seguito un esempio di codice.

   public string Nome { get; } = "Emanuele";

domenica 8 novembre 2015

Le novità di C# 2015 inizializzare una proprietà

Altra interessante novità del nuovo C#, con l'uscita dell'ambiente di Visual Studio 2015, è quella di creare ed inizializzare una proprietà.
Qui di seguito si riporta un esempio di codice, in cui si crea una proprietà di tipo string, e la si inizializza.

   public string nome { get; set; } = "Emanuele";

sabato 7 novembre 2015

novità c# 6.0 operatore null nella condizioni per le proprietà

Tante sono le novità con il Framework 4.6 per il C# ed anche per il VB.Net.
Oltre all'ambiente di sviluppo anche la sintassi del linguaggi, una delle tante novità è quella di utilizzare il simbolo "?" come condizioni per definire se un valore è null oppure no.

Per esempio il frammento di codice qui di seguito, restituisce null, nel caso che la proprietà non ha valori. Nelle precedenti versioni ci sarebbe stato un eccezione a run time.

Esempio:
            string[] testo = null;
            int? elementi = testo?.Length;

La variabile elementi è uguale a null.

nella precedente versione di C#, sarebbe:

 string[] testo = null;
  int elementi = testo.Length;

Avrebbe generato un errore.






venerdì 6 novembre 2015

.Net creazione di un file PDF tramite VB.Net e C#

Si riporta l'articolo scritto per il sito http://www.iprogrammatori.it/articoli/programmazione/art_generare-file-pdf-in-net-vbnet-e-c_1417.aspx

In questo articolo vedremo come generare un file PDF tramite la tecnologia .Net, in particolare con il linguaggio di programmazione VB.Net e C#.
Per generare i file Pdf utilizzeremo la libreria iTextSharp scaricabile dal seguente sito http://sourceforge.net/projects/itextsharp/
Una libreria che offre proprietà e metodi per generare file PDF.
Gli esempi di codice che vedremo si possono utilizzare sia per l’ambiente Web che per applicazioni di tipo Windows Application.
Creazione di un progetto
Si crea un progetto di tipo Windows Application oppure Web Application per il linguaggio di programmazione quello di interesse al lettore.
Dopo aver creato il progetto, aggiungere il riferimento alla libreria ITextSharp, in modo che possiamo gestire le varie classi per la generazione dei file PDF.
Aggiungiamo nella nostra pagina o form un pulsante il quale genera il file pdf composto da un logo, da un titolo e del testo.
Stesura del codice
Passiamo in visualizzazione codice aggiungiamo lo spazio dei nomi per la gestione dei file pdf.
Qui di seguito si riporta l’esempio di codice per entrambi i linguaggi.


VB.Net

Imports iTextSharp.text

Imports System.IO

Imports iTextSharp.text.pdf



C#

using iTextSharp.text;

using iTextSharp.text.pdf;

using System.IO;




Tramite le classi Document, PdfWriter generiamo il documento impostando le dimensioni ed il testo all’interno del file, mentre tramite i le classi fontFactory impostiamo il tipo di font, con la classe Paragraph impostiamo il testo.
Qui di seguito il frammento di codice per l’ambiente web per entrambi i linguaggi.


Web

VB.Net

Protected Sub BtnGenera_Click(sender As Object, e As EventArgs) Handles BtnGenera.Click

        Dim Documento As New Document(PageSize.A4, 100, 100, 25, 25)

 

        Dim output = New MemoryStream()

 

 

        Dim Scrittura As PdfWriter = PdfWriter.GetInstance(Documento, output)

 

        Documento.Open()

 

 

 

        Dim logo = iTextSharp.text.Image.GetInstance(Server.MapPath("Img/logs.png"))

 

 

        logo.Alignment = iTextSharp.text.Image.ALIGN_LEFT

 

 

        Documento.Add(logo)

        Documento.Add(Chunk.NEWLINE)

 

        Documento.Add(Chunk.NEWLINE)

        Dim titleFont = FontFactory.GetFont("Arial", 20, iTextSharp.text.Font.BOLD)

        Dim ParTitolo As New Paragraph("Titolo", titleFont)

 

        ParTitolo.Alignment = iTextSharp.text.Element.ALIGN_CENTER

 

 

        Documento.Add(ParTitolo)

        Dim ParTesto As New Paragraph("Testo")

        Documento.Add(ParTesto)

 

 

        Documento.Close()

 

 

        Me.Response.BufferOutput = True

        Me.Response.Clear()

        Me.Response.ClearHeaders()

        Me.Response.ContentType = "application/octet-stream"

 

        Me.Response.AddHeader("Content-Disposition", "attachment; filename=test.pdf")

 

        Me.Response.BinaryWrite(output.GetBuffer())

 

        Me.Response.Flush()

        Me.Response.End()

 

    End Sub

 

C#

protected void BtnGenera_Click(object sender, EventArgs e)

        {

 

 

             Document Documento = new    Document(PageSize.A4, 100, 100, 25, 25);

 

 

        MemoryStream output = new  MemoryStream();

 

 

        PdfWriter Scrittura  =  PdfWriter.GetInstance(Documento, output);

 

        Documento.Open();

 

        var logo = iTextSharp.text.Image.GetInstance(Server.MapPath("Img/logs.png"));

 

        logo.Alignment = iTextSharp.text.Image.ALIGN_LEFT;

 

 

      

        Documento.Add(logo);

        Documento.Add(Chunk.NEWLINE);

 

        Documento.Add(Chunk.NEWLINE);

        var titleFont = FontFactory.GetFont("Arial", 20, iTextSharp.text.Font.BOLD);

        Paragraph ParTitolo = new Paragraph("Titolo", titleFont);

 

        ParTitolo.Alignment = iTextSharp.text.Element.ALIGN_CENTER;

 

 

        Documento.Add(ParTitolo);

        Paragraph ParTesto = new    Paragraph("Testo");

        Documento.Add(ParTesto);

        Documento.Close();

 

 

 

        this.Response.BufferOutput = true;

        this.Response.Clear();

        this.Response.ClearHeaders();

        this.Response.ContentType = "application/octet-stream";

 

        this.Response.AddHeader("Content-Disposition", "attachment; filename=test.pdf");

 

        this.Response.BinaryWrite(output.GetBuffer());

 

        this.Response.Flush();

        this.Response.End();

 

 

        }

  

Windows Application:

 

VB.Net

Private Sub BtnGenera_Click(sender As System.Object, e As System.EventArgs) Handles BtnGenera.Click

        Dim Documento As New Document(PageSize.A4, 100, 100, 25, 25)

 

 

        Dim fileStream As New FileStream("E:\test.pdf", FileMode.Create, FileAccess.Write, FileShare.None)

 

        Dim Scrittura As PdfWriter = PdfWriter.GetInstance(Documento, fileStream)

 

        Documento.Open()

 

        Dim logo = iTextSharp.text.Image.GetInstance("E:\LogoAngoloDelComputer.jpg")

 

        logo.Alignment = iTextSharp.text.Image.ALIGN_LEFT

 

 

      

        Documento.Add(logo)

        Documento.Add(Chunk.NEWLINE)

 

        Documento.Add(Chunk.NEWLINE)

        Dim titleFont = FontFactory.GetFont("Arial", 20, iTextSharp.text.Font.BOLD)

        Dim ParTitolo As New Paragraph("Titolo", titleFont)

 

        ParTitolo.Alignment = iTextSharp.text.Element.ALIGN_CENTER

 
        Documento.Add(ParTitolo)

        Dim ParTesto As New Paragraph("Testo")

        Documento.Add(ParTesto)

 

 

        Documento.Close()

 

 
    End Sub

 
C#

private void BtnGenera_Click(object sender, EventArgs e)

        {

            Document Documento  = new Document(PageSize.A4, 100, 100, 25, 25);

  
        FileStream fileStream = new    FileStream("E:\\test.pdf", FileMode.Create, FileAccess.Write, FileShare.None);

 

        PdfWriter Scrittura   = PdfWriter.GetInstance(Documento, fileStream);

 
        Documento.Open();

 
       var logo = iTextSharp.text.Image.GetInstance("E:\\LogoAngoloDelComputer.jpg");


        logo.Alignment = iTextSharp.text.Image.ALIGN_LEFT;

     

        Documento.Add(logo);

        Documento.Add(Chunk.NEWLINE);

 

        Documento.Add(Chunk.NEWLINE);

        var titleFont = FontFactory.GetFont("Arial", 20, iTextSharp.text.Font.BOLD);

        var ParTitolo = new  Paragraph("Titolo", titleFont);

 
        ParTitolo.Alignment = iTextSharp.text.Element.ALIGN_CENTER;

 
        Documento.Add(ParTitolo);

        Paragraph ParTesto = new    Paragraph("Testo");

        Documento.Add(ParTesto);

         Documento.Close();

        }

 

Conclusioni
L’articolo ha voluto fornire in maniera introduttiva il lettore alla generazione dei file in formato pdf, nel creare un semplice file composto dal testo ed immagine. La libreria gratuita iTextSharp con le numerose classi permette una flessibilità e gestione dei file pdf in maniera professionale ed ottimale.

giovedì 5 novembre 2015

free ebook develop

x-ebook


Dal seguente sito http://www.syncfusion.com/resources/techportal/ebooks potete scaricare diversi ebook in lingua inglese, riguardante la programmazione.
I manuali, riguardano diversi linguaggi e tecnologie.





mercoledì 4 novembre 2015

FT: Rivista e community sugli animali



A volte scrivo fuori tema, che non hanno a che vedere con il tema di questo blog. A volte sono sulla vita privata a volte di altro argomento.
In questo post, vi segnalo una rivista, molto interessante ed una community in cui si parla di animali, davvero ben fatta.
Il sito PetFamily, qui http://www.petfamily.it il sito, è una community in cui si trovano tanti articoli, notizie, ed annuncio sugli animali domestici.
Inoltre c'è la possibilità di ricevere una copia omaggio di questa rivista, che invitiamo di leggere visto che è fatta molto bene.

Ho ricevuto la rivista del mese di ottobre, e devo dire che è fatta benissimo.
Per riceverla gratuitamente, basta collegarsi http://www.petfamily.it/iscrizioni.html al seguente sito.

Un sito molto importante per coloro che hanno animali domestici.

martedì 3 novembre 2015

Evento Microsoft Future Decoded

FutureDecoded

Appuntamento imperdible per tutti gli sviluppatori e sistemisti che vogliono scoprire le novità del mondo Microsoft.
Il 12 novembre 2015, si terrà l'evento "Future Decoded" http://www.microsoft.com/italy/futuredecoded/ presso l'auditorium della Musica di Roma.

Durante l'evento si parlerà delle opportunità delle novità del mondo Microsoft.

Insomma un evento imperdibile.

lunedì 2 novembre 2015

Effettuare ricerche di testo nel web per verificare se è copiato

Oggi vi segnalo un sito molto interessante ed utile, soprattutto per coloro che scrivo sul web.
Il seguente sito https://www.plagtracker.com/upload/ permette di effettuare una ricerca sul web, nel caso che vogliamo verificare se il testo che abbiamo scritto (una porzione consistente esempio 6 righe) è stato copiato in altri siti.
Una volta, copiato nell'area di ricerca, tramite il pulsante "Start Cheching" verrà effettuata una ricerca su internet, con i risultati sulla destra del sito.
Un valido sito.

domenica 1 novembre 2015

Windows Phone rilevare la posizione tramite C# e VB.Net

Si riporta l'articolo scritto per il sito http://www.iprogrammatori.it/articoli/programmazione/art_windows-phone-81-rilevamento-della-posiz_1394.aspx


In questo nuovo articolo sulla programmazione di Windows Phone 8.1 tramite l’ambiente di sviluppo Visual Studio 2013 express per Windows, vedremo in maniera introduttivo la gestione del rilevamento della posizione, il tutto con il linguaggio di programmazione VB.Net e C#.
Creazione del progetto
Si crea un nuovo progetto per Windows Phone 8.1, applicazione vuota.
Nell’interfaccia grafica, inseriamo tre caselle di testo, ed un pulsante, il tutto come riportato in questo frammento di codice di tipo XAML.


    <Grid>

        <Button Content="Button" HorizontalAlignment="Left" Margin="20,24,0,0" VerticalAlignment="Top" Click="Button_Click"/>

        <TextBox HorizontalAlignment="Left" Margin="25,90,0,0" TextWrapping="Wrap" Name="textLatitudine" Text="" VerticalAlignment="Top" Width="350"/>

        <TextBox HorizontalAlignment="Left" Margin="25,145,0,0" TextWrapping="Wrap" Name="textLongitudine" Text="" VerticalAlignment="Top" Width="350"/>

        <TextBox HorizontalAlignment="Left" Margin="25,195,0,0" TextWrapping="Wrap" Name="textPosizione" Text="" VerticalAlignment="Top" Width="350"/>

 

    </Grid>

A questo punto, dobbiamo rendere il tipo di applicazione abilitata al rilevamento della posizione.
Nel file “Package.appManifest”, facciamo click sulla paginetta “Funzionalità” e poi mettiamo la spunta sulla voce “Percorso”, il tutto come mostrato in figura 1.



Figura 1 - le impostazione per settare la posizione.

Stesura del codice

Passiamo in visualizzazione codice, in particolare nell’evento click.
Prima di tutto, dobbiamo inserire lo spazio dei nomi, per la geolocalizzazione.
Qui di seguito il frammento di codice



VB.Net

Imports Windows.Devices.Geolocation

C#

using Windows.Devices.Geolocation;


A livello di classe oppure nell’evento click si crea un oggetto di tipo “Geolocator” che ci permette di gestire il posizionamento.


VB.Net

Dim geo As Geolocator = Nothing

C#

Geolocator geo = null;

Mentre nell’evento click scriviamo il seguente codice che rileva la latitudine, longitudine e l’accuratezza.


VB.Net

  Private Async Sub Button_Click(sender As Object, e As RoutedEventArgs)

 

        If geo Is Nothing Then

            geo = New Geolocator()

        End If

 

        Dim pos As Geoposition = Await geo.GetGeopositionAsync()

 

        textLatitudine.Text = "Latitudine: " + pos.Coordinate.Point.Position.Latitude.ToString()

        textLongitudine.Text = "Longitudine: " + pos.Coordinate.Point.Position.Longitude.ToString()

        textPosizione.Text = "Posiione: " + pos.Coordinate.Accuracy.ToString()

    End Sub

C#

private async void Button_Click(object sender, RoutedEventArgs e)

        {

            if (geo == null)

            {

                geo = new Geolocator();

            }

 

            Geoposition pos = await geo.GetGeopositionAsync();

            textLatitudine.Text = "Latitudine: " + pos.Coordinate.Point.Position.Latitude.ToString();

            textLongitudine.Text = "Longitudine: " + pos.Coordinate.Point.Position.Longitude.ToString();

            textPosizione.Text = "Posiione: " + pos.Coordinate.Accuracy.ToString();

       

        }


Se facciamo click sul pulsante, provandolo sull’emulatore o sul dispositivo fisico, vedremo che verranno valorizzate le caselle di testo con i valori rilevati.

Conclusioni

L’articolo ha voluto fornire al lettore una semplice introduzione al rilevamento della posizione, utilizzando le classi messi a disposizione dal Framework.
La gestione della posizione può tornare utile e si può utilizzare in vari contesti. Con le nuove classi ed il nuovo ambiente di sviluppo Visual Studio 2013 e versione successive, la creazione di applicazioni in ambito mobile è stato notevolmente sempliicato.