Kopieren van Textbox.Text in form1 naar Label.Text in form2

Status
Niet open voor verdere reacties.

Roadrocker66

Gebruiker
Lid geworden
7 mei 2009
Berichten
104
Hallo allemaal!
Roadrocker66 hier weer eens.

Stel ik heb 2 formulieren (form1 en form2)
In form1 heb ik een textbox.text (bv: 123456) en die wil ik kopiëren naar een label in form2.
Hoe doe ik dat?

Ik heb van alles geprobeerd maar het lukt me niet.
Daarnaast zou dit ook visa versa moeten werken.

Ik bedoel ik heb in een contacten formulier een linklabel.Text (bv: "username@hotmail.com") en die wil ik naar een textbox kopiëren in een andere form (een e-mail form).
Hoe doe ik dit?

Ter informatie:
Ik werk met VB 2010 C#

Mvg. Roadrocker66
 
Je zal moeten werken met een get en een set

In uw Form2 declareer je een public methode die je kan gebruiken in Form1
Code:
String _linkLabel;

public String LinkLabel
{
     get { return _linkLabel; }
     set { _linkLabel = value; }
}

In Form1 open je waarschijnlijk ergens het tweede formulier...

Code:
Form2 form2 = new Form2();
form2.LinkLabel = textbox.Text;
form2.Show();
 
Hier gaat het dus voortdurend mis.

Mijn linklabel in form2 (Contacten formulier = cf) is "username@hotmail.com" en deze linklabel heet bij mij: email_llbl3
Mijn textbox in form1 (e-Mail formulier = emf) is dus (email) "to" textbox en deze textBox heet bij mij: to
Wanneer ik je code voor form1 (Contacten formulier = cf) declareer in public en de
Code:
emf.email_llbl3 = to.Text;
gebruik. krijg ik een fout melding bij "to".

Foutmelding:
eMail_form.to is inccesible due to its protection level
Dit gebeurd nu elke keer als ik textboxes.Text of labels wil kopiëren naar andere textboxes of labels in andere forms.

Snap dat niet echt.

Mvg Roadrocker66.
 
Waarom je die foutmelding krijgt bij to.
is omdat je to met een kleine letter t schrijft, het moet To zijn. ;)

En ik heb mij er eventjes mee bezig gehouden ;)


Voor het overbrengen van Form1 naar Form2
Voor in form1
Code:
        Form2 form2;
        public Form1()
        {
            InitializeComponent();
            form2 = new Form2(this);
        }
In form2
Code:
        Form1 form1;
        public Form2(Form1 form01)
        {
            InitializeComponent();
            form1 = form01;
        }

voor de gegevens van de textbox in form1 naar de label over te zetten in form2.
Ik maak wel gebruik van de button.

Vergeet niet je label de modifier op public te zetten in form2 ;)

dit typ je in form1.
Code:
        private void button1_Click(object sender, EventArgs e)
        {
            form2.label1.Text = textBox1.Text;
        }

Foto:






Is het dit wat je zoekt ? ;)


ik wil nu niet moeilijk gaan doen ;)
Als je nog andere vragen hebt kun je dat hier posten.
Als het over C# gaat ;).
http://www.helpmij.nl/forum/forumdisplay.php/162-C-.net



Mvg, Jim
 
Laatst bewerkt:
Hallo allemaal.
Roadrocker66 hier weer eens.

Het lukt mij maar niet goed om een TextBox .Text (Rn_txt) van form2( StartUp_form) te kopiëren naar een label (Rn_label3) in form1 (Menu).
In form1 het hoofd formulier (Menu) heb ik een stopwatch en de buttons om andere formulieren te kunnen openen met een form.Show en form.Closing Event.
Wanneer ik vanuit form1 (Menu) form2 open (StartUp_form) kan ik alle textBoxes invullen.

Geen probleem.

In textBox1 van de StartUp_form (Rn_txt) moet het rit nummer worden ingevuld.
Na het invullen van alle textBoxes kan ik met een Save button weer terug naar het hoofd (Menu). formClosing Event.
De Rn_txt.Text van form2 moet nu gekopieerd worden naar Rn_label3 in form1

Code voor het openen van form2 in form1 is:
Code:
        private void Stup_btn_Click(object sender, EventArgs e)
        {
                // maak form StartUp aan
                StartUp_form su = new StartUp_form();
                su.Show();
                su.Rn_txt.Focus();
            
                // verbind FormClosing aan suClosing functie
                su.FormClosing += suClosing;

                // verberg MENU
                this.Hide();
            }

        public void suClosing(object sender, EventArgs e)
        {
            // StartUp form is gesloten, laat MENU
            // weer verschijnen
            this.Show();
        }

Nu kan ik alle textBoxes invullen en daarna met de Save button in form2 weer terug naar form1.
De Rn_txt moet nu worden gekopieerd naar Rn_label3 in form1.

Code form2 (de Save button)
Code:
        private void Stup_form_txt_Save_Click(object sender, EventArgs e)
        {
            if (Rn_txt.Text == null || Rn_txt.Text == "")
            {
                MessageBox.Show("You must at least enter your ridenumber and name !", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Rn_txt.Text = "";
                Rn_txt.Focus();
            }
            else if (Yn_txt.Text == null || Yn_txt.Text == "")
            {
                MessageBox.Show("Please enter your name !", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Yn_txt.Text = "";
                Yn_txt.Focus();
            }
            else
            {
                Application.DoEvents();
[COLOR="darkorange"]                Menu m = new Menu();
                m.Rn_label3.Text = Rn_txt.Text;
                m.Show();[/COLOR]
                Close();
            }
        }

Bij Close(); loopt de timer van de stopwatch gewoon door zoals het moet.
Maar laat in de label het rit nummer niet zien. (Rn_label3) van form1 (Menu).
Wanneer ik Close(); verander in this.Hide();
Laat het programma wel het rit nummer zien in de Rn_label3.Text, maar loopt de timer van de stopwatch niet door.

Wie kan mij helpen met de juiste code en uitleg hierover?

Mvg. Roadrocker66
 
Zou de status graag op opgelost zetten maar helaas is dit nog steeds niet opgelost.
 
als ik het goed begrijp wil je simpelweg een soort van popup window maken en na het sluiten daarvan het result uitlezen en in je dat in je mainform`s textbox/label plaatsen.

als dat het geval is hoef je niet met forum close events enzo te werken.

is dit ongeveer wat je bedoeld ?

Code:
//wat labels enzo op je form plaatsen

Popup : Form{

public void btn_click(object sender, EventArgs e){

//alle overige dingen aflsuiten zoals een timer ??

this.Close();

}

public string getInput(){
   return labelValue.Text;
}

}

Mainform : Form1 {

private void HandleIO(){

Popup popup =  new Popup();
 DialogResult result = popup.ShowDialog();
 string value = popup.getInput();
 popup.Dispose();
}
 
}


je kan dan voor de popup.ShowDIalog(); wat dingetjes doen (zoals huidige form met hide laten verdwijnen, mits je dat wilt).
Voordeel hiervan is dat je geen events hoeft af te vangen.
 
Laatst bewerkt:
Kopieeren van textbox naar label in andere form.

Hallo Westerland

Geloof wel dat ik zo iets bedoel.
Het is overigens wel de bedoeling dat de stopwatch timer in het Main Menu blijft doorlopen als ik de StartUp_form (de PopUp form) open en sluit.
(Deze timer tijd is zichtbaar in een label op het Main Menu form).
Uren - Minuten en seconden. 00:00:00
Wanneer ik het StartUp_form open en de textboxes invul ben ik met werkzaamheden bezig, waar de tijd van moet worden geregistreerd als real date / time tijd. (Kom ik misschien later nog wel ff op terug).
Die timer blijft nu alleen doorlopen op die FormClosing manier met Close();

Als ik thuis ben zal ik het eens uit proberen.
Voorlopig nog aan het rond trucken.

Ik verplaats trouwens zodra ik mijn nieuwe topics naar de Subforum Net / C# Net .
Dit is mij aan bevolen omdat daar meerdere C# programmeurs zouden zitten.

Alvast bedankt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan