cs_shendu
Messages postés7Date d'inscriptiondimanche 29 février 2004StatutMembreDernière intervention17 août 2015
-
17 mars 2006 à 20:21
MorpionMx
Messages postés3466Date d'inscriptionlundi 16 octobre 2000StatutMembreDernière intervention30 octobre 2008
-
18 mars 2006 à 10:13
Bonjour à tous,
j'ai un peu de mal avec l'accès des composants en C#.
Je m'explique, j'ai une form appelée frmtoto, sur cette form j'ai une texbox appelée txtbox et une classe appelée class1.
En fait je voudrai, dans ma classe avoir accès au contenu de ma textbox mais je ne vois pas trop comment faire.
J'ai essayé , dans ma classe, des trucs comme frmtoto.txtbox mais txtbox n'est pas dispo après le point.
Alors si quelqu'un peu m'expliquer plus que clairement parce que je
vais devoir faire la même chose avec des combobox et autre ...
gyzmo222
Messages postés66Date d'inscriptionlundi 27 juin 2005StatutMembreDernière intervention 2 juin 20061 17 mars 2006 à 21:33
vas dans ton code de designer (si visual studio 2005, il est mis dans un fichier à part et tu dois cliquer sur afficher tous les fichiers juste au dessus de l'explorateur de solution) et trouver la ligne:
private System.Windows.Forms.TextBox txtbox;
et la changer en:
public static System.Windows.Forms.TextBox txtbox;
ensuite la TextBox1 sera accessible DANS une fonction de ta class1
MorpionMx
Messages postés3466Date d'inscriptionlundi 16 octobre 2000StatutMembreDernière intervention30 octobre 200857 18 mars 2006 à 10:13
Une méthode ou un champ non static ne peuvent etre accédés qu'a partir d'une instance de classe.
Une méthode ou un champ static appartient a ton objet lui meme, et non pas a ses instances.
(enfin, ce sera moins valable en C# 3 pour les méthodes, mais on y est pas encore).
Exemple :
public class Test
{
public int Entier;
public static int EntierStatic
}
Avec cette classe, tu pourras accéder a EntierStatic de cette facon
Test.EntierStatic = 10;
Alors pour acceder a Entier, il te faudra d'abord creer une instance de la classe Test
Test t = new Test();
t.Entier = 10;