[ pigi @ 22.03.2006. 19:23 ] @
Molim da mi neko objasni u cemu je problem sa Visualnim nasledjivanjem u C#?
Imam VS 2002 .NET i kad u Solution Explorer-u idem desni klik->Add->Add
Inherited Form i u Inheritance Picker-u izaberem vec postojecu formu (klasu)
koja ce biti nasledjena, ne otvori mi dizajner prozor nego mi prijavi mi
gesku:

"An error has occured while loading the document. Fix the error and then try
loading the document again. The error message follows:

The designer could not be shown for this file because none of the classes
within it can be designed. The designer inspected the following classes in
the file:

The base class could not be loaded. Ensure the assembly has been referenced
ir built if it is part of the project."

O cemu on to? Base klasa radi perfektno i obe klase pravim unutar istog
projekta?
[ aleksandarpopov @ 23.03.2006. 13:42 ] @
Imao sam i ja slican problem sa C#, trebalo je:
1. pozvati metod InitializeComponents() iz konstruktora nasledjene klase
2. zatim, prepraviti istu funkciju u virtual u super klasi, a u nasledjenoj da dodati override istoj funkciji..
3. i jos u samom telu metoda InitializeComponents() u nasledjenoj klasi pozvati base.InitializeComponents()...
Otprilike ovako nekako, mozda ne bas ovako ali evo ti ideje. Davno sam se sa time zezao...Mozda ima i laksi nacin ali meni je ovako nekako proradilo...Nadam se da nisam bas previse konfuzno napisao odgovor...Nadam se da sam ti nesto pomogao..
Poz...
[ pigi @ 24.03.2006. 13:17 ] @
To sto si ti napisao to je OK za kodovanje pesaka npr iz Notepad-a, da u konstruktoru
Form2 pozoves base.InitializeComponents(), ali problem je u necemu drugom.

Naime, kad hocu da napravim novu formu postojeceg projekta u postojecem namespace-u,
kliknem u Solution Explorer-u Visual Studija,na namespace desnim klikom i
od ponudjenih opcija izaberem Add i u Add-u izmedju ostalog imam opciju
Add Windows Form i opciju Add Inhereted Form. Kad izaberem
Add Windows Form otvori mi novu formu koja se zove npr. Form2
i u njoj samo dodam sintaxu nasledjivanja vec postojece fome i nista vise:

class Form2 : Form1

Ovako sve funkcionise perfektno, ali tako mogu slobodno da
zaboravim na pravljenje forme graficki iz Design View-a. Mogu
dalje Form2 samo da kodujem peske iz Code View-a!

Kad izaberem opciju Add Inhereted Form, kako bih masu stvari
odradio automatski, prijavi mi pomenutu greskui onda nema
pravljenja forme NI NA KOJI NACIN!

poz.
[ aleksandarpopov @ 24.03.2006. 17:10 ] @
Ha,ha.....Ne pricam ti o programiranju u Notepadu, pricam ti o VS... isto tako ni meni nije radilo nasledjivanje formi, a i kako bi radilo kada dizajner nigde ne generise to sto sam ti rekao u prethodnom postu. Uradi sve to sa dodavanjem nasledjene forme ali iz Class view-a, ne iz SolutionView-a i dodaj ono sto sam ti ja napisao u prethodnom postu, pa ce ti se forma prikazati u Designeru. Designer sam ne zna da ti pozove inicijalizaciju komponenti....Kapiras?
Mozda ima i elegantnije resenje, ali meni je ovo proradilo... Probaj, experimentisi...
Poz...
[ pigi @ 28.03.2006. 15:38 ] @
Znam, hvala ti. Mislim, uspevam ja da odradim posao npr. otvorim novu Win Formu i tu dodam sintaxu nasledjivanja, ali ja sam sve to hteo da kad mi se vec nudi ta mogucnost, odradim u jednom kliku :)

U svakom slucau mislim da je problem u tipu fajla, jer on mi u pickeru ponudi .exe fajl koji cu da nasledim, a u stvari bi trebalo .dll, a to ne znam kako da napravim.

poz.
[ aleksandarpopov @ 29.03.2006. 17:34 ] @
Kako mislis nasledjujes .exe? Nasledjujes tip (klasu) ne fajl...tvoja klasa iz koje nasledjujes moze biti kompajlirana i u okviru .exe ili dll nebitno, bitno je samo da je "vidljiva" tj. namespace da je ukljucena u using...
poz
[ pigi @ 30.03.2006. 14:21 ] @
Pa u Picker-u kad mi ponudi da izaberem misem sta hocu da nasledim, on mi da da izaberem listu i u listi su ponudjeni exe fajlovi. Neko me je pitao sa news-a da li koristim exe fajlove ili dll, pa sam pretpostavio da je u tome fora, jer kad kliknem na browse on, Picker mi trazi dll fajlove da ucita ni cs ni exe.

poz.