//Evento per cambiare i dati selezionati dalla ListBox
        private void Lst_VediDati1_SelectionChanged_1(object sender, SelectionChangedEventArgs e)
        {
            Covid_19 dati = (Covid_19)Lst_VediDati1.SelectedItem; //effettuo il casting sul elemento selezionato

            if (dati != null)
            {
                Txt_Regione.Text = dati.NomeRegione.ToString();     //faccio visualizzare il dato selezionato in una textbox

                Txt_Positivi.Text = dati.CasiTotali.ToString();     //faccio visualizzare il totale dei contagiato della regione selezionata

                Txt_Provincia.Text = dati.NomeProvincia.ToString(); //faccio visualizzare il nome della regione in una text box
            }
        }
        //Bottone per aggiornare i dati
        private void Btn_AggiornaDati_Click(object sender, RoutedEventArgs e)
        {
            Covid_19 dati = (Covid_19)Lst_VediDati1.SelectedItem; //effettuo il casting sul elemento selezionato

            int valore = Convert.ToInt32(Txt_Positivi.Text);      //aggiorniamo il nuovo valore

            if (dati.CasiTotali != valore)                        //controlliamo se il valore modificato è diverso dall'originale
            {
                dati.CasiTotali = valore;                         //assegniamo il nuovo valore
                MessageBox.Show("Operazione eseguita con successo", "OK");
            }

            Task.Factory.StartNew(() => Scrivi());  //aggiunta nuovo valore al file xml
        }
        //Metodo estratto per caricare idati nella ListBox
        private void CaricaDatiCovid()
        {
            string    path    = @"DatiCovid.xml";
            XDocument xmlDoc  = XDocument.Load(path);
            XElement  xmlRoot = xmlDoc.Element("root");
            var       xmlRow  = xmlRoot.Elements("row");


            //Rallento il caricamneto usando Thread.Sleep()
            Thread.Sleep(1000);


            //Mi scorro i valori della lista del file DatiCovid-19_Lucan
            foreach (var item in xmlRow)
            {
                //Cerco i valori nei diversi tag
                XElement xmlData            = item.Element("data");
                XElement xmlStato           = item.Element("stato");
                XElement xmlCodiceRegione   = item.Element("codice_regione");
                XElement xmlNomeRegione     = item.Element("denominazione_regione");
                XElement xmlCodiceProvincia = item.Element("codice_provincia");
                XElement xmlNomeProvincia   = item.Element("denominazione_provincia");
                XElement xmlSiglaProvincia  = item.Element("sigla_provincia");
                XElement xmlLatitudine      = item.Element("lat");
                XElement xmlLongitudine     = item.Element("long");
                XElement xmlCasiTotali      = item.Element("totale_casi");
                XElement xmlNoteIt          = item.Element("note_it");
                XElement xmlNoteEn          = item.Element("note_en");


                //Creo l'istanza della classe Covid-19 ----> parte relativa all oggetto Covid-19
                Covid_19 datiCovid = new Covid_19();
                datiCovid.Data            = xmlData.Value;
                datiCovid.Stato           = xmlStato.Value;
                datiCovid.CodiceRegione   = Convert.ToInt32(xmlCodiceRegione.Value);
                datiCovid.NomeRegione     = xmlNomeRegione.Value;
                datiCovid.CodiceProvincia = xmlCodiceProvincia.Value;
                datiCovid.NomeProvincia   = xmlNomeProvincia.Value;
                datiCovid.SiglaProvincia  = xmlSiglaProvincia.Value;
                datiCovid.Latitudine      = Convert.ToDouble(xmlLatitudine.Value);
                datiCovid.Longitudine     = Convert.ToDouble(xmlLongitudine.Value);
                datiCovid.CasiTotali      = Convert.ToInt32(xmlCasiTotali.Value);
                datiCovid.NoteIt          = xmlNoteIt.Value;
                datiCovid.NoteEn          = xmlNoteEn.Value;


                //Faccio visualizzare le proprietà di Alunno nella ListBox
                Dispatcher.Invoke(() => Lst_VediDati1.Items.Add(datiCovid));


                //Controlliamo se il CancellationToken è stato richiesto
                if (cancToken.Token.IsCancellationRequested)
                {
                    //Cosi facendo lasciamo al metodo carica dati di eseguire l'ultima istruzione che sta eseguendo
                    break;
                }


                //Rallento il caricamento usando Thread.Sleep() per visualizzare un alunno alla volta
                Thread.Sleep(1500);
            }


            //Riabillito il Bottone Aggiorna  e disattivo il bottone per l interruzione del caricamento
            Dispatcher.Invoke(() =>
            {
                Btn_CaricaDati.IsEnabled = true;

                Btn_Interrompi.IsEnabled = false;

                //Mettiamo a null il CancellationToken
                cancToken = null;
            });
        }