Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [c#]Visualizzare file real time su textbox...?

    Ciao,
    vorrei creare un thread che duri tutto il ciclo di vita di un form.
    Questo dovrà tenere aggiornata una textbox che conterrà il contenuto di un file

    Vorrei quindi far si che nel caso in cui avvenga una modifica sul file questa venga subito visualizzata nella textbox per mezzo del thread.

    ...E' realizzabile?

    Grazie.

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    ovviamente si..

    naturalmente suppongo che tu conosca bene i thread..

    se sei esperto potresti rimanere in ascolto di eventuali eventi di modifica file, intanto il thread dorme, svegli il thread che legge il file, e scrive sulla text box usando un delegate...

  3. #3
    No,non li conosco molto bene, sto iniziando ora a confrontarmici per l'università.

    Vediamo.
    Io per ora ho creato un metodo che apre e legge il file inserendo ogni riga di questo in una listbox.

    Suppongo che il delegate che dicevi vada dichiarato tipo questo sotto:

    codice:
    private delegate void ckFile();
    Ecco il metodo che ho creato:
    codice:
            public void CheckFile()
            {
                /* mi è sembrato di capire qua e la che questo pezzo di codice serve poi quando si lancia il thread...?
                if (lstbox.InvokeRequired) 
                    {
                        lstbox.Invoke(new ckFile(CheckFile));
                        return;
                    }
                */
    
                //cancello la listbox
                for (int i = lstbox.Items.Count - 1; i > 0; i--)
                {
                    lstbox.Items.Remove(lstbox.Text);
                }
    
                //Leggo il file
                StreamReader sr = File.OpenText("dati.txt");
                string riga = "";
                do
                {
                    lstbox.Items.Add(riga);
                    riga = sr.ReadLine();      
                } 
                while (riga != null);
    
                sr.Close(); 
            }
    Come dovrei fare per quanto riguarda il thread?

    Grazie.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.