Avatar billede ameq Nybegynder
18. april 2005 - 11:58 Der er 11 kommentarer og
1 løsning

Hjælp til winform

Hej, jeg har lavet en winform (form1), hvor der er en knap. Når jeg trykker på knappen kommer der en ny form fra (form2) i min form2 er der en textbox (textbox_navn) og en ny knap. Når jeg så trykker på knappe ville jeg godt kunne få fat i indholdet textbox_navn i form1. Hvordan gør jeg det?
Avatar billede arne_v Ekspert
18. april 2005 - 12:05 #1
så skal form2 have en reference til form1, så kan du bruge alle public
metoder og properties
Avatar billede ameq Nybegynder
18. april 2005 - 12:14 #2
og hvordan sætter jeg sådan en? og blever det så i form2 min kode skal laves eller kan min form2 bare klade en funktion nede i form1?
Avatar billede arne_v Ekspert
18. april 2005 - 12:31 #3
hvis form2 har en reference til form1 så kan form2 kalde metoder i form1
Avatar billede arne_v Ekspert
18. april 2005 - 12:33 #4
Her er et eksempel på noget lidt tilsvarende:

using System;
using System.Drawing;
using System.Windows.Forms;

namespace E
{
    public class MainForm : Form
    {
        private Button button1;
        private TextBox textBox1;
        public MainForm()
        {
            InitializeComponent();
        }
        private void InitializeComponent()
        {
            textBox1 = new TextBox();
            button1 = new Button();
            SuspendLayout();
            textBox1.Multiline = true;
            textBox1.Location = new Point(50, 50);
            textBox1.Size = new Size(200, 50);
            button1.Location = new Point(50, 150);
            button1.Size = new Size(200, 50);
            button1.Text = "Åben sub form";
            button1.Click += new EventHandler(Button1Click);
            ClientSize = new Size(300, 250);
            Controls.Add(button1);
            Controls.Add(textBox1);
            Text = "Main Form";
            ResumeLayout(false);
        }
        public string TB
        {
            get
            {
                return textBox1.Text;
            }
        }
        void Button1Click(object sender, System.EventArgs e)
        {
            SubForm sf = new SubForm(this);
            sf.ShowDialog();
        }
    }
    public class SubForm : Form
    {
        private MainForm mf;
        private TextBox textBox1;
        public SubForm(MainForm mf)
        {
            this.mf = mf;
            InitializeComponent();
        }
        private void InitializeComponent()
        {
            textBox1 = new TextBox();
            SuspendLayout();
            textBox1.Multiline = true;
            textBox1.Location = new Point(50, 50);
            textBox1.Size = new Size(200, 50);
            textBox1.Text = mf.TB;
            ClientSize = new Size(300, 150);
            Controls.Add(textBox1);
            Text = "Sub Form";
            ResumeLayout(false);
        }
    }
    public class TestClass
    {
        [STAThread]
        public static void Main(string[] args)
        {
            Application.Run(new MainForm());
        }
    }
}
Avatar billede ameq Nybegynder
18. april 2005 - 13:27 #5
det virker nu takker
Avatar billede arne_v Ekspert
18. april 2005 - 13:40 #6
så vil jeg ligge et svar
Avatar billede burningice Nybegynder
18. april 2005 - 18:20 #7
arne> hehe... du burde næsten have copyright på din indlende kommentar (hint: http://www.eksperten.dk/spm/610679)
Avatar billede ameq Nybegynder
18. april 2005 - 18:26 #8
he he ja
Avatar billede arne_v Ekspert
18. april 2005 - 18:32 #9
du kan finde 25 eksempler på at jeg har givet det svar i C#, VB.NET og Java

sådan er det i den objektorienterede verden : hvis du har en reference kan du
ellers kan du ikke
Avatar billede burningice Nybegynder
18. april 2005 - 18:51 #10
jo, men det er nok første gang jeg er faldet over to spørgsmål stillet så kort tid efter hinanden hvor du er kommet med 95% ens kommentar.

Men ja... det er da rigtigt at det er en typisk OOP-ting, og da også det de fleste har så mange problemer med at forstå. Ellers ville vi jo ikke have disse spørgsmål.
Avatar billede pfp Nybegynder
19. april 2005 - 15:44 #11
Er det singleton?
Avatar billede ameq Nybegynder
19. april 2005 - 16:11 #12
nix, det er så jeg kan bruge min metoder fra form1 i form2
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