n° 219
Novembre 2017
Dicembre 12, 2017, 06:41:30 *
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?

Accesso con nome utente, password e durata della sessione
Notizia:
 
   Indice   Linux Windows Techassistance Gameassistance videogame hardware Aiuto Ricerca Agenda Downloads Accedi Registrati  


* Messaggi recenti
Messaggi recenti
Pagine: [1]   Vai giù
  Stampa  
Autore Discussione: Equivalente di refresh/DoEvents  (Letto 3751 volte)
0 utenti e 1 Utente non registrato stanno visualizzando questa discussione.
SimoneVB
Sr. Member
****

Karma: +3/-0
Scollegato Scollegato

Messaggi: 787


simonevb@live.it
Mostra profilo
« inserita:: Maggio 28, 2013, 10:23:19 »

Ciao a tutti,

sto muovendo i primi passi su Windows Phone 7.1
ho fatto della ricerca in rete ma senza trovare nulla per risolvere questo problema banalissimo:

Ho un breve codice VB.net con cui testo la connettività del cellulare

Codice:
        Me.lblCheckResult.Text = "Attendere, rilevamento connettività..."

        Dim sResult As String = ""
        Dim sNetworkInterfaceDescr As String = ""

        ' this requires System.Net.NetworkInformation and Microsoft.Phone.Net
        If NetworkInformation.NetworkInterface.GetIsNetworkAvailable() And NetworkInformation.NetworkInterface.NetworkInterfaceType <> NetworkInformation.NetworkInterfaceType.None Then

            sResult = "Connettività presente"

            Select Case NetworkInformation.NetworkInterface.NetworkInterfaceType
                Case NetworkInformation.NetworkInterfaceType.Ethernet : sNetworkInterfaceDescr = "Ethernet"
                Case NetworkInformation.NetworkInterfaceType.MobileBroadbandCdma : sNetworkInterfaceDescr = "CDMA"
                Case NetworkInformation.NetworkInterfaceType.MobileBroadbandGsm : sNetworkInterfaceDescr = "GSM"
                Case NetworkInformation.NetworkInterfaceType.Wireless80211 : sNetworkInterfaceDescr = "Wireless80211"
            End Select
            sResult &= vbCrLf & "tramite " & sNetworkInterfaceDescr
        Else
            sResult = "Connettività assente!"
        End If
        lblCheckResult.Text = sResult
dove lblCheckResult è un TextBlock.

Bene, vorrei ottenere esattamente questo risultato:
il testo visualizzato in lblCheckResult è "Attendere, rilevamento connettività..."
fin tanto che il codice seguente è completato.
Invede lblCheckResult si aggiorna solo alla fine, quando il mio codice è completamente eseguito.

Ho cercato invano, ma non c'è un'equivalente del metodo refresh
o di Application.DoEvents con cui possa forzare l'aggiornamento della visualizzazione
del TextBlock?

Grazie in anticipo.
Simone
Registrato

--------------------------------------------------
Incredibilmente esistono ancora persone che
proteggono i propri PC con password=pippo.
Roberto Allegra
Global Moderator
Hero Member
*****

Karma: +50/-1
Scollegato Scollegato

Messaggi: 2102



Mostra profilo WWW
« Risposta #1 inserita:: Maggio 29, 2013, 12:11:36 »

Usare DoEvents, in generale, è male, indipendentemente dal sistema operativo. Occhiolino

Dato che accedere a NetworkInterfaceType è bloccante, ti conviene farlo in un thread separato. Un esempio è spiegato qui. E' in C#, ma sono sicuro che non avrai problemi a creare l'equivalente VB.
Registrato

I moderatori invitano tutti gli utenti a prendere visione del REGOLAMENTO e a rispettarlo.
SimoneVB
Sr. Member
****

Karma: +3/-0
Scollegato Scollegato

Messaggi: 787


simonevb@live.it
Mostra profilo
« Risposta #2 inserita:: Maggio 30, 2013, 01:16:30 »

Grazie mille Robby!!!
Registrato

--------------------------------------------------
Incredibilmente esistono ancora persone che
proteggono i propri PC con password=pippo.
Pagine: [1]   Vai su
  Stampa  
 
Vai a:  

Copyright © 2017 Edizioni Master SpA. p.iva : 02105820787

Tutti i diritti di proprietà letteraria e artistica riservati. - Privacy



powered by Simple Machines