none
Dimensionare testo preservando formattazione RRS feed

  • Domanda

  • E' possibile in una Richtextbox impostare direttamente solo la dimensione del testo lasciando inalterata la formattazione preesistente (quindi non usando FontDialog)? Grazie in anticipo per le risposte.
    venerdì 21 settembre 2012 19:18

Risposte

  • E' possibile in una Richtextbox impostare direttamente solo la dimensione del testo lasciando inalterata la formattazione preesistente (quindi non usando FontDialog)? Grazie in anticipo per le risposte.

    Ciao FilippoTer,

    Ti avevo risposto qui, intanto per chi non ha seguito quella discussione ti lascio la risposta anche da questa parte, siccome la domanda in questo thread sia più specifica.

    Per settare la dimensione del font mantenendo il stile del testo selezionato, puoi impostare un nuovo Font che mantiene la stessa FontFamily o Name del SelectionFont corrente; per maggiori dettagli guarda questo thread.

    Saluti,


    Irina Turcu - Microsoft

    [Manifesto] Regole e Aspetti generali all'uso dei forum MSDN

    Questo contenuto è distribuito “as is” e non implica alcuna responsabilità da parte di Microsoft. L'azienda offre questo servizio gratuitamente, allo scopo di aiutare gli utenti e approfondire la loro conoscenza dei prodotti e tecnologie Microsoft.

    LinkedIn

    • Contrassegnato come risposta Irina Turcu martedì 9 ottobre 2012 16:41
    martedì 25 settembre 2012 15:29

Tutte le risposte

  • Ciao FilippoTer,

    volevo segnalarti questa link della guida:

    http://msdn.microsoft.com/it-it/library/yh8963yx.aspx

    ti evidenzio inoltre il seguente codice che potresti inserire nell'evento click di un button:

    RichTextBox1.SelectionFont = New Font("Tahoma", 12, FontStyle.Bold)

    Spero sia tutto chiaro


    Ruggiero Lovreglio 
    www.ruggierolovreglio.altervista.org


    sabato 22 settembre 2012 05:47
  • Salve Ruggiero,

    ti evidenzio inoltre il seguente codice che potresti inserire nell'evento click di un button: RichTextBox1.SelectionFont = New Font("Tahoma", 12, FontStyle.Bold)

    Grazie per la risposta. Tuttavia utilizzando questa soluzione si verifica quanto avevo esposto, ovvero che l'istruzione distrugge il testo preesistente rimpiazzando ogni occorrenza di carattere con Thaoma, 12 ecc. Una soluzione ho invece trovato (e penso sia l'unica possibile, in base anche a quanto trovato per la rete) e consiste nell'intervenire direttamente sul codice RTF attraverso un'opportuna routine creata allo scopo.

    domenica 23 settembre 2012 18:43
  • Ciao,

    prova a postare il codice dato che a me non da lo stesso problema.


    Ruggiero Lovreglio 
    www.ruggierolovreglio.altervista.org


    domenica 23 settembre 2012 18:56
  • Ruggiero ha scritto

    prova a postare il codice dato che a me non da lo stesso problema.

    Come è possibile? con

    RichTextBox1.SelectionFont = New Font("Tahoma", 12, FontStyle.Bold)

    devi ottenere gli attributi specificati nei parametri sulla parte di testo selezionata: i caratteri diventano del tipo Thaoma, dimesione 12, grassetto. Dai un'occhiata alla risposta che ti ho dato nell'altro thread. Ciao

    domenica 23 settembre 2012 19:43
  • Ciao,

    scusami non avevo capito bene la domanda, si hai ragione tu.


    Ruggiero Lovreglio 
    www.ruggierolovreglio.altervista.org


    martedì 25 settembre 2012 07:24
  • E' possibile in una Richtextbox impostare direttamente solo la dimensione del testo lasciando inalterata la formattazione preesistente (quindi non usando FontDialog)? Grazie in anticipo per le risposte.

    Ciao FilippoTer,

    Ti avevo risposto qui, intanto per chi non ha seguito quella discussione ti lascio la risposta anche da questa parte, siccome la domanda in questo thread sia più specifica.

    Per settare la dimensione del font mantenendo il stile del testo selezionato, puoi impostare un nuovo Font che mantiene la stessa FontFamily o Name del SelectionFont corrente; per maggiori dettagli guarda questo thread.

    Saluti,


    Irina Turcu - Microsoft

    [Manifesto] Regole e Aspetti generali all'uso dei forum MSDN

    Questo contenuto è distribuito “as is” e non implica alcuna responsabilità da parte di Microsoft. L'azienda offre questo servizio gratuitamente, allo scopo di aiutare gli utenti e approfondire la loro conoscenza dei prodotti e tecnologie Microsoft.

    LinkedIn

    • Contrassegnato come risposta Irina Turcu martedì 9 ottobre 2012 16:41
    martedì 25 settembre 2012 15:29
  • Irina Turcu ha scritto:

    Per settare la dimensione del font mantenendo il stile del testo selezionato, puoi impostare un nuovo Font che mantiene la stessa FontFamily o Name del SelectionFont corrente; per maggiori dettagli guarda questo thread.

    Mi scuso per il ritardo ma non avevo più controllato questi thread. Il problema è quello che avevo indicato a Ruggiero e in effetti il thread che mi segnali propone lo stesso quesito. Però anche in questo non viene data una soluzione perché così facendo le impostazioni vengono adattate a quelle del nuovo Font (si veda quanto avevo precisato qui in risposta a Ruggiero). Ciao

    sabato 10 novembre 2012 00:13
  • Mi scuso per il ritardo ma non avevo più controllato questi thread. Il problema è quello che avevo indicato a Ruggiero e in effetti il thread che mi segnali propone lo stesso quesito. Però anche in questo non viene data una soluzione perché così facendo le impostazioni vengono adattate a quelle del nuovo Font (si veda quanto avevo precisato qui in risposta a Ruggiero). Ciao

    Ciao FilippoTer,

    Ma stai usando WPF o Windows Forms?

    In Windows Forms, guardando anche la documentazione su MSDN, il cambiamento della formattazione di una proprietà del Font in una RichTextBox si può fare solo impostando un nuovo oggetto Font nella proprietà SelectionFont della RTB. Per mantenere le proprietà già impostate nel Font di prima, devi specificarle come provenienti da esso. Per questo ti puoi salvare il SelectionFont corrente prima di modificarlo (come nell’esempio linkato sopra).

    In WPF invece, hai il metodo ApplyPropertyValue che puoi impostare sul testo selezionato nella RichTextBox per modificare solo certe proprietà del Font, senza toccare le altre. Vedi qui per maggiori dettagli.

    Saluti,


    Irina Turcu - Microsoft

    [Manifesto] Regole e Aspetti generali all'uso dei forum MSDN

    Questo contenuto è distribuito “as is” e non implica alcuna responsabilità da parte di Microsoft. L'azienda offre questo servizio gratuitamente, allo scopo di aiutare gli utenti e approfondire la loro conoscenza dei prodotti e tecnologie Microsoft.

    LinkedIn

    lunedì 12 novembre 2012 11:33
  • Ciao Irina.

    In Windows Forms, guardando anche la documentazione su MSDN, il cambiamento della formattazione di una proprietà del Font in una RichTextBox si può fare solo impostando un nuovo oggetto Font nella proprietà SelectionFont della RTB. Per mantenere le proprietà già impostate nel Font di prima, devi specificarle come provenienti da esso. Per questo ti puoi salvare il SelectionFont corrente prima di modificarlo (come nell’esempio linkato sopra).

    In WPF invece, hai il metodo ApplyPropertyValue che puoi impostare sul testo selezionato nella RichTextBox per modificare solo certe proprietà del Font, senza toccare le altre. Vedi qui per maggiori dettagli.

    Sto usando Windows Forms. Grazie per queste precisazioni, infatti mi ero reso conto che in W.F. non è possibile fare questo. Come avevo detto ho risolto agendo direttamente sul codice RTF; la procedura che ho adottato cambia la dimensione bene e preserva tutto il resto, solo che se deve agire su una RTB mettiamo di circa 1000 righe di caratteri impiega qualche secondo (non è il massimo dell'efficienza). Per il discorso WPF mi era già capitato leggendo MSDN di accorgermi che questo tipo di progetto ha delle "agevolazioni" che WF non ha, oltre che sfaccettature d'impatto visivo migliori ( è specifico per Vista), ma io non ho mai sviluppato applicazioni WPF e prima di farlo voglio leggermi ben bene la documentazione e acquisire maggior confidenza con XMTL.

    mercoledì 14 novembre 2012 16:34