OVH Cloud OVH Cloud

Interaction encore controle sur form et class

6 réponses
Avatar
Fabian Vilers
Bonjour, c'est encore moi,

J'ai une form avec un textbox. J'ai une classe à part qui exécute
quelquechose. Puis-je facilement envoyer du text dans le textbox de la form
à partir de la classe sur le coté?

Fabian

6 réponses

Avatar
Fabian Vilers
> J'ai une form avec un textbox. J'ai une classe à part qui exécute
quelquechose. Puis-je facilement envoyer du text dans le textbox de la
form à partir de la classe sur le coté?



Désolé pour l'erreur dans le sujet... remplacez "encore" par "entre".

Je pense que j'aurai encore besoin des delegates pour ce problème...
Avatar
David Alloza
Il te suffit d'affecter ton Texte a la property .Text de ta textbox.
Le texte va automatiquement mis a jour aprés l'affectation.
En fait, je ne voit pas ou tu a un problème .


"Fabian Vilers" a écrit dans le message de
news: 42b80c39$0$1821$
Bonjour, c'est encore moi,

J'ai une form avec un textbox. J'ai une classe à part qui exécute
quelquechose. Puis-je facilement envoyer du text dans le textbox de la
form à partir de la classe sur le coté?

Fabian



Avatar
Paul Bacelar
Le problème, c'est le multi-threading.

La propriété Text d'une textbox n'est pas threadSafe.

Utilisez la méthode Invoke du contrôle.
--
Paul Bacelar



"David Alloza" wrote in message
news:#
Il te suffit d'affecter ton Texte a la property .Text de ta textbox.
Le texte va automatiquement mis a jour aprés l'affectation.
En fait, je ne voit pas ou tu a un problème .


"Fabian Vilers" a écrit dans le message


de
news: 42b80c39$0$1821$
> Bonjour, c'est encore moi,
>
> J'ai une form avec un textbox. J'ai une classe à part qui exécute
> quelquechose. Puis-je facilement envoyer du text dans le textbox de la
> form à partir de la classe sur le coté?
>
> Fabian
>




Avatar
Fabian Vilers
> Le problème, c'est le multi-threading.

La propriété Text d'une textbox n'est pas threadSafe.

Utilisez la méthode Invoke du contrôle.



Merci, aurais tu un example?
Avatar
Fabian Vilers
> Il te suffit d'affecter ton Texte a la property .Text de ta textbox.
Le texte va automatiquement mis a jour aprés l'affectation.
En fait, je ne voit pas ou tu a un problème .



Et bien au sein de ma classe ou la méthode est exécutée, je n'ai pas de
visibilité sur le textbox et je ne peut donc pas intéragir avec lui.
Avatar
Remi Thomas - MVP
"Fabian Vilers" écrivit

Il te suffit d'affecter ton Texte a la property .Text de ta textbox.
Le texte va automatiquement mis a jour aprés l'affectation.
En fait, je ne voit pas ou tu a un problème .



Et bien au sein de ma classe ou la méthode est exécutée, je n'ai pas de
visibilité sur le textbox et je ne peut donc pas intéragir avec lui.



Exact,
Mais comme l'indique David, tu peux ajouter une méthode ou une propriété
publique qui elle a accès au textbox

class maForm : System.Windows.Forms.Form
{
....
public string AssignerTexte // Une propriété
{
set { monTextBox.Text = value; }
}
...
}

Rémi

--
Rémi Thomas - MVP Visual C++
Développeur Windows indépendant
http://www.xtware.com/cv