IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

Mise en page d'un texte selectionné dans une richtextbox


Sujet :

Windows Presentation Foundation

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 91
    Points : 65
    Points
    65
    Par défaut Mise en page d'un texte selectionné dans une richtextbox
    Bonjour, je voudrai en faite qu'en appuyant sur un bouton, le texte de la richtextbox qui est selectionné (donc pas tout le texte) "change d'apparence" (qu'il deviennent gras,italique, souligné, alignement,...).
    Si quelqu'un sais comment faire, ou du moins peut me donner un lien qui peut m'aider, je le remercie.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    regarde ca
    http://stackoverflow.com/questions/1...ogrammatically

    et la
    http://blogs.msdn.com/jfoscoding/arc...14/512825.aspx
    en creusant un peu ce dernier article y'a des trucs sympa
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 91
    Points : 65
    Points
    65
    Par défaut
    Ca a l'air assez complexe. Je ne comprend pas tout d'ailleurs. Y'aurait pas une solution plus simple?
    Merci.

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    ben non c'est le plus simple ca
    de rajouter en code ou en xaml l'image
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 91
    Points : 65
    Points
    65
    Par défaut
    Bon j'est trouvé ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public void Gras()
            {
                var start = Zone_de_saisie.Document.ContentStart;
                var startPos = start.GetPositionAtOffset(3);
                var endPos = start.GetPositionAtOffset(8);
                var textRange = new TextRange(startPos, endPos);
                textRange.ApplyPropertyValue(TextElement.ForegroundProperty, new SolidColorBrush(Colors.Blue));
                textRange.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold);
            }
    Par contre se qui est en rouge, sa ne me va pas. Je voudrai que le changement s'applique au texte selectionné et pas a une partie de la richtextbox. Qu'est ce qu'il faudrai mettre a la place du code en rouge?
    Merci.

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    voila
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
       var start = richtTextBox_DynamicTextZone.Document.ContentStart;
                var tx = richtTextBox_DynamicTextZone.Selection; // start.GetPositionAtOffset(3);
                var startPos = tx.Start;
                var endPos = tx.End;
                var textRange = new TextRange(startPos, endPos);
                textRange.ApplyPropertyValue(TextElement.ForegroundProperty, new SolidColorBrush(Colors.Blue));
                textRange.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold);
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 91
    Points : 65
    Points
    65
    Par défaut
    Merci, ca fonctionne comme je le voulais (j'ai juste du remplacer "richtTextBox_DynamicTextZone" par le nom de ma richtextbox).
    Je voudrai avoir un dernier petit renseignement, enfaite je n'est pas trouvé quoi mettre a la place de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    textRange.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold);
    pour mettre le texte en souligné. Peut-tu m'aider?
    merci

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    a priori l'underline existe aussi
    ca devrait etre comme cela que tu peux le mettre
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  9. #9
    Membre expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Points : 3 015
    Points
    3 015
    Par défaut
    Par contre, il n'est pas présent directement sur un TextElement, mais on le trouve sur les TextBlock, Span, ... via la propriété TextDecoration.

  10. #10
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 91
    Points : 65
    Points
    65
    Par défaut
    Merci. J'ai donc fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    textRange.ApplyPropertyValue(TextBlock.TextDecorationsProperty, TextDecorations.Underline);
    Mais maintenant, je voudrais faire quelque chose comme sa:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    textRange.ApplyPropertyValue(TextBlock.TextDecorationsProperty, TextDecorations.Normal);
    Le seul probleme c'est que "Normal" n'existe pas pour remettre TextDecoration comme a l'origine. Quelqu'un sait-il comment faire?
    Merci.

  11. #11
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    t'as tenté juste un null pour voir ?
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  12. #12
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 91
    Points : 65
    Points
    65
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    textRange.ApplyPropertyValue(TextBlock.TextDecorationsProperty, null);
    C'est bon, ca marche correctement.
    Merci a tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 20/02/2013, 17h40
  2. Réponses: 2
    Dernier message: 07/11/2012, 12h35
  3. Mise en Page d'un document xml dans une JSP
    Par sami117 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 03/01/2010, 19h32
  4. Réponses: 2
    Dernier message: 22/12/2009, 17h23
  5. Réponses: 8
    Dernier message: 09/09/2005, 09h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo