Ahoj. Mámasi docela stupidni dotaz, ale opravdu si stim nevim rady :) Mám několik oken (Form) a potřebuju mit nějakej hlavni arraylist vytvorenej v tom hlavnim okne ale abych moh s datama z něho pracovat i v jinym formu. proste hlavni okno je pro vypis toho arraylistu a dalsi okno je pri pridani prvku do toho arraylistu a nevim jak udelat aby byl pristupnej i votm druhym okne.
Snad mi rozumite jak to myslim :) předem díky za reakce :)
Fórum › .NET
[C#] Jak udělat, aby byl ArrayList přistupnej v několika Formech?
To Liner : Tak ho těm dalším formům předej v konstruktoru, to by nešlo?
To Liner : No mohl bych, ale taky můžu bejt úplně mimo, protože nevím, jak tvůj kód vypadá a proč tam ten ArrayList vlastně je. Třeba by to šlo řešit lépe.
To djanosik : arraylist tam je jako dynamicky pole do kteryho se budou ukladat objekty, ketry se budou dat editovat mazat..atd.. proste ten progrmamá bejt jakotakova hoodne jedoducha databaze filmu treba... v hlavnim okne bude vypisovy okno a tlacitka pro pridani odebrani mazani a takovyhleveci.. kliknu na pridej vyskoci jiny okno kam napisu do text boxu ty data a ulozi seto jako objekt do toho arraylistu. kdyz to bude editace tak se do tech textboxu nactou data pro ten danej prvek z toho array listu.a takhle.. vim ze popis neni uplne nejlepsi:) ale snad se to da nejak pochopit jak to myslim :)
proste jde mi jenom o to ze nevim kde presne zalozit ten arraylist abych snim moh pracovat v ostanich formech. pristup k nemu byl v tech jinech formech treba mujarraylist.add(objektfilm) ,nebo se pletu?
To Judegar : no podle tooh co ma čtu to vypda dobre. ale nevim jak to dat na muj pripad presne.
mám to takhle.ve Form1 je jenom tlacitko ktery spusti Form2.a ve Form2 je přidani objektu do arraylistu, kterej byměl bejt ve Form1,abych snim moh pracovat tam (vypis). Ve Form2 ho tam potrebuju pridat.
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 Databaze
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 nj = new Form2();
nj.Show();
}
}
}
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 Databaze
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
Mp3 jep = new Mp3();
jep.Skupina = "kat";
jep.Nazev = "dole";
jep.Album = "coda";
jep.Rok = 1995;
Form1.seznam.Add(jep); //pridani prvku do arraylistu kterej je ve Form1
listBox1.Items.Add(jep);
}
}
}
doufám, že ted jeto trochu srozumitelnější :)
To Judegar : Co jsem pochopil, Singleton by nesplňoval požadavky.
To Liner : Nebylo by lepší ve Form1 vytvořit instanci ArrayListu a pak ji předat do Form2? Třeba přes zmíněnej konstruktor? Nebylo by lepší místo ArrayList použít generickou kolekci?
public partial class Form1 : Form
{
private ArrayList list = new ArrayList();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 nj = new Form2(this.list);
nj.Show();
}
}
public partial class Form2 : Form
{
public Form2(ArrayList list)
{
InitializeComponent();
Mp3 jep = new Mp3();
jep.Skupina = "kat";
jep.Nazev = "dole";
jep.Album = "coda";
jep.Rok = 1995;
list.Add(jep); //pridani prvku do arraylistu kterej je ve Form1
listBox1.Items.Add(jep);
}
}
To djanosik : moc diky:) přesne taklhe sme ot nejak myslel :) a tu generickou kolekci pouziju asi spis :) kazdopádne tohle vyresilo presne muj problem takze jestejendou diky :) vim,že tohle je opravdu zrovna blbost, tak snad sem moc neobtěžoval :)
To Liner : Což o to, neobtěžoval, každej někdy začínal. Jen si dej pozor, abys nepokračoval stylem "teorie je k ničemu, naučím se to praxí", protože takovej přístup často nefunguje (je nutnej nějakej základ, na kterým můžeš stavět).
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Jak udělat aby statusbar ukazoval tooltiptext? — založil Jarda
Jak udelat aby se win2k tvarily jako xp? — založil Matej Zabsky
Jak udělat, aby animace proběhla jen jednou. — založil JeanBabtisteGrenouille
Automatické sčítání několika několika buněk (řádků i sloupců) — založil jurasek07
Jak uložit soubor.txt do kolekce ArrayList? — založil n2u
Moderátoři diskuze