Modifier une textbox dans une class

[Résolu]
Signaler
Messages postés
283
Date d'inscription
mercredi 7 décembre 2005
Statut
Membre
Dernière intervention
9 juillet 2010
-
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
-
Salut a tous

voila je voudrai savoir si il est possible de modifier la valeur d'une textbox à partir d'une fonction appartenant a une class. Et si oui comment???? (1 exemple svp)

merci d'avance

voila mon code :

<HR>

fichier test.cs

namespace Test
{

class
Test
{

string path =
Environment.CurrentDirectory +
"\";

public
void Run()
{

// traitement
//modification de txtBox.Text


}
}
}

fichier Form1.cs


namespace Test
{

public
partial
class
Form1 :
Form
{

private
delegate
void
UPDTXTBOX(
string val);

private
void UpdtTXTbox(
string val)
{

this.txtBox.Text = val;
}

void UpdtTXTBox(
string val)
{
BeginInvoke(
new
UPDTXTBOX(UpdtTXTbox),
new
object[] { val });
}

private
delegate
void
UPDTCTRL(
bool etat);

private
void UpdateCtrl(
bool etat)
{

this.Launch.Enabled = etat;
}

void BtnEnable()
{
BeginInvoke(
new
UPDTCTRL(UpdateCtrl),
new
object[] {
true });
}

void BtnDisabled()
{
BeginInvoke(
new
UPDTCTRL(UpdateCtrl),
new
object[] {
false });
}





/*****************************************************************/



public Form1()
{
InitializeComponent();
}

private
void Launch_Click(
object sender,
EventArgs e)
{

Test test =
new
Test();
UpdateCtrl(
false);
test.Run();
UpdateCtrl(
true);
}
}
}

3 réponses

Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
36
c'est possible mais pas conseillé.

il préférable d'utiliser une propriété qui sera branchée sur ton textbox.

la meilleur solution étant d'implémenter un évènement dans ta classe Test et de t'abonner dans ton formulaire

Sébastien FERRAND
[MVP Visual C#]
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
54
Petite parenthese en passant, utilise Invoke plutot que BeginInvoke, si tu n'attends pas de valeur en retour.



Mx
MVP C#
Messages postés
283
Date d'inscription
mercredi 7 décembre 2005
Statut
Membre
Dernière intervention
9 juillet 2010
3
je vai faire le mec chiant mais tu pourrai etre un pe plus clair je débute en c#

t'aurai pa un exemple stp

jte remerci