Avatar billede mikze Nybegynder
27. februar 2007 - 18:24 Der er 5 kommentarer og
1 løsning

Ret i en tekstboks i Form1 fra Class1

Hej,

Hvis jeg har en "public static void" funktion i min Class1 som tjekker noget data, hvordan gør jeg så sådan at hvis fx

command.StartsWith("Skriv tekst")

så skal den gå tilbage til Form1 og ændre txtTekst.Text til "Skriv noget" ??

Noget lignende:

if(command.StartsWith("Skriv tekst"))
{
    Form1.txtTekst.Text = "Skriv noget";
}
Avatar billede kalp Novice
27. februar 2007 - 18:30 #1
Du skal sende en reference af form1 til din class1
for at kunne gøre det.
Avatar billede kalp Novice
27. februar 2007 - 18:33 #2
i din Class1 skal du altså i dine variable lave en

Form1 form;

og i Class1's construktor

public Class1(Form1 form)
{
this.form = form;
}

så kan du skrive det her i din class1 for at rette i form1.

if(command.StartsWith("Skriv tekst"))
{   
form.txtTekst.Text = "Skriv noget";
}

og i Form1 opretter du din  class1 sådan her

Class1 class = new Class1(this);
Avatar billede kalp Novice
27. februar 2007 - 18:34 #3
du kan også..

public static void DinFunction(string command, Form1 form)
{
if(command.StartsWith("Skriv tekst"))
{   
form.txtTekst.Text = "Skriv noget";
}

}
Avatar billede kalp Novice
27. februar 2007 - 18:35 #4
og kalde funktionen fra din Form1  sådan her

Class1.DinFunction("tester",this);
Avatar billede mikze Nybegynder
28. februar 2007 - 18:46 #5
Jo tak :-) - men det ved jeg godt!

Er der ingen måder at undgå dette på?
Avatar billede kalp Novice
28. februar 2007 - 18:52 #6
du kan ikke fra et objekt ændre noget i et andet uden en reference til det.

ellers kender jeg ikke det trick
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester