Ako nacitat hodnoty z "Windows Form" objektu z hlavneho formulara – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Ako nacitat hodnoty z "Windows Form" objektu z hlavneho formulara – C / C++ – Fórum – Programujte.comAko nacitat hodnoty z "Windows Form" objektu z hlavneho formulara – C / C++ – Fórum – Programujte.com

 

Julo
~ Anonymní uživatel
1 příspěvek
23. 4. 2009   #1
-
0
-

Ahojte,

chcel by som Vas poprosit o pomoc s nasledovnym problemom. Vytvoril som si aplikaciu "Windows Forms Application" v C#. Do tejto aplikacie som pridal novy "Windows Form". Problemom je ze ak chcem precitat napr. nejaku hodnotu z comboBoxu ktory je umiestneny na tomto novom formulary dostanem hlasku hlasku ohladne vynimky "null". V tom zmysle ako keby objekt nebol vytvoreny cez "new". Tento problem sa vyskytuje len v pripade, ze pristupujem k danemu objektu z hlavneho formulara aplikacie.
Samozrejme predtym ako sa snizim k danemu comboBoxu pristupit. Je formular vytvoreny cez "new".

Preto som mal umysle vytvorit formular s comboBoxom uz pred touto castou kodu:

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form_MainWindow());

Ale v tomto pripade mi kompilator zahlasi chybu. Preto som kod ktory obsahuje vytvorenie daneho formulara s comboBoxom umiestnil do casti (konstruktora hlavneho Formulara aplikacie) ktora je vykonana pocas vytvarania hlavneho formulara teda ovela skor ako sa dotazujem na spominany comboBox:

public partial class Form_MainWindow : Form
{
public Communication_Manager_dir.CCommunicationMainManagerForm communicationMainManagerForm;

public Form_MainWindow()
{
communicationMainManagerForm = new Communication_Manager_dir.CCommunicationMainManagerForm();
InitializeComponent();
}

private void communicationConfigurationToolStripMenuItem_Click(object sender, EventArgs e)
{
communicationMainManagerForm.ShowForm_communicationParameters();
}

Ide o to, ze ak si cez menu hlavneho okna kliknem na polozku v menu je zavolana funkcia communicationConfigurationToolStripMenuItem_Click, ta mi zobrazi dany formular s comboBoxom a mozem s nim pracovat (nacitat text...). Ale len v kode, v danom formulary (v danom "cs" subore).
Problem nastane ak chcem z ineho suboru pristupovat k tomuto comboBoxu a precitat text v ComboBoxe. Stale dostanem hlasku, ze sa dotazujem na objekt (formular) s null aj napriek tomu, ze formular uz bol zobrazeny. Samozrejme, za je dany subor/formular pridany cez "using". C# mi aj ponukne pri pisani kodu cez "." celu cestu k danemu comboBoxu ale pri runtime to hlasi ten "null".
Nemate niekto predstavu ako mozem z jedneho formulara pristupovat k comboBoxom na druhom formulary?

vdaka za pomoc

Nahlásit jako SPAM
IP: 85.216.247.–
dannyk0
Věrný člen
24. 4. 2009   #2
-
0
-

Nejlepsi zpusob je udelat si vlastni property v tom formulari, odkud chces ziskat hodnotu toho comboboxu.
Napriklad ComboValue a v kodu property si nadefinujes, aby to vracelo tu hodnotu toho comboboxu (napr SelectedValue).
Nezapomen tu property mit public.Pak si muzes odkudkoliv po vytvoreni formulare pres new zavolat form1.ComboValue a dostanes hodnotu, kterou pozadujes.

Nahlásit jako SPAM
IP: 85.135.97.–
Jedu v c++,c#,assembler,ASP.NET,PHP,databaze,bezpecnost softwaru[br] -----------------------------------------------------------[br] Muj blog o programovani,hudbe a vsem moznem,co najdu na netu :) [br] http://dannyk.aspone.cz[br] -----------------------------------------------------------[br] Na foru mam nejake prispevky pod nickem Master,tak jen pro upresneni :)
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 129 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý