Diskuze: více formůlářů v jednom okně
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 12 zpráv z 12.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
samozřejmě
From2 f = new From2();
f.Show();
this.Close();
Mnohem lepší je aktuální form nezavírat a druhý zobrazit pomocí ShowDialog(). Aktuální From se tím zneaktivní - tj klasické chování desktop aplikací
já bych potřeboval aby oboje obsluhovala 1 classa, nebo abych dostal data z jedný classy do druhý
tak to už jsem vyřešil konstruktorem ale objevil se další problém, první okno nezmizí. tohle je první okno:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace mygame
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
Form2 okno2 = new Form2(textBox1.Text);
okno2.ShowDialog();
}
}
}
a tady druhé (zatím jen vypíše do labelu to co jsem zadal v první okně do textBoxu):
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace mygame
{
public partial class Form2 : Form
{
string name = "jmeno";
string name2;
public Form2(string sName)
{
name = sName;
name2 = sName2;
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
label1.Text = name;
}
}
}
A proč by mělo zmizet, když ho nikde nerušíš a ani nevoláš Hide()?
přidal jsem do programu:
Form1 okno1 = new Form1();
okno1.Hide();
ale nic se nezměnilo, jak udělám aby úplně zmizelo?
Pokud to okno chceš zavřít udělal bych to jak píše misaz.
no tak jsem tam dal this.Close(); a vyplo mi to celou aplikaci (mám pocit že se to první okno chová jako metoda main)
už jsem to vyřešil, dal jsem this.visible = false;
Nějaký form musí být hlavní...
private void button1_Click(object sender, EventArgs e)
{
Hide();
Form2 okno2 = new Form2(textBox1.Text);
okno2.ShowDialog();
}
To je vše.
Zobrazeno 12 zpráv z 12.