Visualizzazione dei risultati da 1 a 6 su 6

Discussione: TextBox illimitata

  1. #1

    TextBox illimitata

    Ho la necessità di visualizzare dei file di testo di diversi Mb presenti su una cartella, inibendo la possibilità all'operatore di navigare sulle risorse del PC.
    Ho quindi fatto una piccola applicazione che permette all'operatore di selezionare un file da unaListBox (che ho riempito precedentemente in base a delle informazioni lette sul file di registro) e di poterlo visualizzare su una TextBox.
    Il mio problema è la limitazione dell'oggetto: 65k.

    Esiste un oggetto alternativo che mi permetta di visualizzare (non ho nemmeno bisogno di modificare/aggiungere dati) un file di diversi MB?
    O in caso, la possibilità di utilizzare un editor poendogli passare il file da caricare come parametro e inibendo la possibilità di navigare sulle risorse el comuter?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ciao MaxFlegias,
    potresti utilizzare il controllo RichTextBox.
    Dall'MSDN: "Le applicazioni che già utilizzano controlli TextBox possono essere adattate all'utilizzo del controllo RichTextBox, il quale non dispone tuttavia dello stesso limite di capacità di caratteri (64 KB) del normale controllo TextBox."
    Il controllo deve essere caricato da Progetto>Componenti ...
    LM

  3. #3
    grazie per la risposta.
    In effetti mi ero dimenticato di dire che ho già provato ad usare RichTextBox ma con scarsissimi risultati.

    Purtroppo mentre la Textbox funziona tranquillamente anche con file di 20 Mb e mi tronca semplicemente il testo fino al riempimento deli 65k, l'applicazione con la RichTextBox si impalla completamente e sono costretto a terminare il processo. Evidentemente il caricamento dell'oggetto comporta operazioni più complesse e si "loopa". O forse devo solo pazientare una decina di minuti prima che l'oggetto sia completamente caricato
    In ogni caso la lentezza sarebbe comunque un problema...

    Speravo di poter utilizzare un controllo semplice come la TextBox e senza limitazione, senza avere un controllo complesso e pieno di proprietà e metodi come la RichTextBox. In fondo devo solo visualizzare un file testo ;-)

    Comunque grazie per la risposta

    MaxFlegias

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Premetto che visualizzare un testo di diversi mega (diversi quanto? 2, 5, 10, 100?), che l'utente deve poter scorrere e leggere, mi sembra una cosa che ha poco senso.

    In ogni caso, l'apertura di un file di quelle dimensioni e il relativo caricamento in un controllo, mi sembra normale che impegni il sistema abbastanza (in termini di tempo ...).

    La soluzione potrebbe essere quella di costruire il codice per caricare i primi 64 K del nella textbox e caricare la parte che serve (in modo dinamico) in base alle scelte dell'utente (scorrimento con mouse o tastiera ...).

  5. #5
    si, l'idea di utilizzare la TextBox come "finestra" del buffer in memoria caricato di tutto il file (fino a 20 Mb) è la soluzione che ho sicuramente in mente e sarebbe la più "pulita". Speravo solo di trovare il controllo già pronto

    Vabbè, mi rimbocco le maniche e mi metto al lavoro...

    grazie a tutti per i suggerimenti

    MaxFlegias

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ti consiglio di operare con un Memory Mapped File (MMF) quando dovrai accedere alle informazioni da visualizzare in finestra.

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.