Utiliser un RichTextbox definit dans un UserControl depuis un autre UserControl

Signaler
Messages postés
18
Date d'inscription
samedi 6 septembre 2003
Statut
Membre
Dernière intervention
15 avril 2013
-
Messages postés
18
Date d'inscription
samedi 6 septembre 2003
Statut
Membre
Dernière intervention
15 avril 2013
-
Bonjour à tous,
Je débute en c# et je developpe un outil en WPF + C#.
L'interface ce compose de plusieur pages (definit par des UserControl)

J'ai creer un UserControl avec un RichtextBox et je cherche a controler ce
composant depuis un autre UserControl (autre page de mon UI)

Comment pouvoir "adresser" ce richTextbox ?

Merci de votre aide

5 réponses

Messages postés
380
Date d'inscription
samedi 22 janvier 2005
Statut
Membre
Dernière intervention
13 août 2011
7
salut

ton user control contenant la richtextbox doit avoir

exemple :
public class ConteneurRichtextbox : UserControl
{

    private RichTextBox _Rich;

    public RichTextBox Rich
    {
       get { return _Rich; }
    }

    public ConteneurRishtextbox()
    {
       _Rich = new RichtextBox;
    }
}


dans ton code ou tu dois modifier le text de la richtextbox :

MonUserControl.Rich.Text = "voila l'access au richtextbox";


pas plus compliquer que cela :)
Messages postés
18
Date d'inscription
samedi 6 septembre 2003
Statut
Membre
Dernière intervention
15 avril 2013

Slaut,
Merci pour ta réponse rapide.
Ca me fait avancer mais je pense que je me crois les pinceaux.. j'ai toujour pas d'accés :(

Mon richeditbox est definit en XAML dans mon UserControl5:
<RichTextBox name="richeditbox1" .../>

Dans mon code behind en C# de mon deuxieme UserControl4, je n'ai pas l'accés au richedit1 via UserControl5.

j'ai essayé d'adapter ton code de la facon suivante (codebehind de l'UserControl5):

public partial class UserControl5 : UserControl
{
private RichTextBox _Richtextbox1;

public RichTextBox Richtextbox1
{
get { return _Richtextbox1; }
}

public UserControl5()
{
InitializeComponent();
_Richtextbox1 = new RichTextBox();
}

Comme je débute, je suppose que me declaration sont a l'ouest, pourrais-tu me dire a quel niveau?

Merci
Messages postés
380
Date d'inscription
samedi 22 janvier 2005
Statut
Membre
Dernière intervention
13 août 2011
7
vire cette ligne _Richtextbox1 = new RichTextBox(); dans ton code

et c tout bon , comme tu utilise le disigner , tu ne recreer pas de new RichtextBox1

le disigner la dejas fait
Messages postés
380
Date d'inscription
samedi 22 janvier 2005
Statut
Membre
Dernière intervention
13 août 2011
7
et place ton richtextbox de ton xaml en public
Messages postés
18
Date d'inscription
samedi 6 septembre 2003
Statut
Membre
Dernière intervention
15 avril 2013

dans mon usercontrol4 ca m'indique toujour:

UserControl5 ne contient pas de définiton pour RicheEditbox1

J'ai un peu de mal a passer se richeditbox en public...