Wątek przeniesiony 2014-05-27 11:39 z C# i .NET przez ŁF.

Przekazywanie zmiennej z jednego okna do drugiego

0

Witam
Mam mały problem. Chciałbym przekazać jakąs wartość (powiedzmy 1) z jedngo okna do drugiego. Kolega pomógł mi w tym ale zmienna nie jest przekazywana, bo przy zatrzymaniu programu aby sprawdzić wartość zmiennej w innym oknie pokazuję, że ma wartość 0.... Poniżej zamysł kolegi

Form1:

public int zmienna { get; set; }
private void button6_Click(object sender, EventArgs e)
{
zmienna = 1; // nadanie zmiennej wartosci
}

Form2:

Odpowiadanie odp = new Odpowiadanie();
public int x;
public pyt2()
{
InitializeComponent();

        using (odp)
        {
            x =Convert.ToInt32(odp.zmienna); // przekazanie zmiennej
        }

private void button6_Click(object sender, EventArgs e)
{
if (x == 1)
{
button6.Enabled = false;
}
}

Uzywam VisualStudio 2013 Windows.Form

1
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            Form2 f = new Form2(this);

        }
        public int X { get; set; }
} 
public partial class Form2 : Form
    {
        private Form1 form1;
        public Form2(Form1 form1)
        {
            InitializeComponent();
            this.form1 = form1;
            form1.X = 5;
        }

    } 
0

Przekazywanie zmiennej z formy jednej do drugiej:
Form1:

public int a = 10;
public Form1
{
	InitializeComponent();
	Form2 frm = new Form2(this);
	frm.ShowDialog();
}

Form2:

int b = 0;
Form owner;
public Form2(Form frmOwner)
{
	this.owner = frmOwner;
	b = owner.a;
	owner.a = 20;
}
0

A może zamiast z okienka do okienka załóż klasę typu SINGLETON (sealed) do przechowywania zmiennych.

0 użytkowników online, w tym zalogowanych: 0, gości: 0