

C# UserControl
Mám na UserControlu button s kterým potřebuji zobrazovat a skrývat jiný UserControlu.
Tak mi to nefunguje.
namespace TextEdit01
{
public partial class ucDrahovyPohyb : UserControl
{
public ucDrahovyPohyb()
{
InitializeComponent();
}
private void btnPrimka_Click(object sender, EventArgs e)
{
if (ucDrPoPrimka1.Visible)
{
ucDrPoPrimka1.Visible = false;
}
else
{
ucDrPoPrimka1.Visible = true;
}
}
}
}
Co přesně znamená, že to nefunguje?
Druhý user control se neskrývá.
Můžeš sem dát celý projekt?
Projekt je šílený zkouším si tam různé věci.
Vždyť to ani nejde spustit:
V ucDrahovyPohyb.cs mám ten špatný kód proto to nejde spustit.
To vidím taky. Jenom nechápu, proč píšeš, že to nic neskrývá, když zásadní problém je v tom, že to ani nejde přeložit.
Do ucDrahovyPohyb si přidej property, do které nastavíš referenci na Control(y), které budeš chtít ovládat.
Když se přidá ucDrPoPrimka ucDrPoPrimka1 = new ucDrPoPrimka(); tak to spustit de.
To sice spustit jde, ale ovládá to pak jiný objekt, než který máš na Formu.
Jak napsat ten kód ať to ovládá ten správný.
Viz výše.
Nevím jak to property napsat.
Hlásí mi to TextEdit01.ucDrahovyPohyb.ucDrPoPrimka1.get vrátil null.
A co přesně jsi udělal?
public partial class ucDrahovyPohyb : UserControl
{
// public Control Primka { get; set; }
public ucDrahovyPohyb()
{
InitializeComponent();
}
public Control ucDrPoPrimka1 { get; set; }
private void btnPrimka_Click(object sender, EventArgs e)
{
//Primka = ucDrPoPrimka1;
//ucDrPoPrimka1 = Primka;
if (ucDrPoPrimka1.Visible)
{
ucDrPoPrimka1.Visible = false;
}
else
{
ucDrPoPrimka1.Visible = true;
}
}
}
A naplnil jsi ve formuláři tu property ucDrPoPrimka1?
Nevím si rady udělal sem nový projekt jenom k tomu problému.
Nemohl bys to vyřešit aby Button na zeleném uc skrýval a zobrazoval modrý uc a dat to sem?
Super funguje to dík.