[ twister @ 05.06.2003. 17:46 ] @
OGROMAN problem!

Potrebno mi je da u designer-u imam property koji ce da otvori moj editor koji nasledjuje UITypeEditor. Problem je u sledecem: metoda koja pripada toj klasi a zaduzena je za editovanje vrednosti, tj, poziva se kada se klikne na one tri tackice pored naziva property-a u designeru izgleda ovako:

public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)

u samom MSDN-u pise da ITypeDescriptorContext.Instance NE VRACA UVEK pokazivac na objekat ciji property menjamo.

A meni je on NEOPHODAN jer hocu da: preko njega, tj. njegovog parenta ili ownera iscitam koji su recimo sve textbox-ovi na formi na kojoj se moja komponenta nalazi.

I desava se sledece: postavim kontrolu na formu, u deigneru kliknem na property i on radi, i tako ko zna koliko puta, pa onda odjednom kaze da objekat nije instanciran pa onda tako ko zna dokle pa malo radi pa malo ne radi.

I sa samim primerom FlashTrackBar koji ide uz C#, isto se desava.

Moze li mi neko molim vas pomoci? Poludecu zbog ovoga!

Da nije mozda problem u tome sto ja imam prvu verziju .NET Framework-a, ili mi je pristup totalno pogresan?
[ Reljam @ 05.06.2003. 21:02 ] @
Nikad nisam sa ovim radio, ali pretpostavljam da je razlog to sto je moguce pozvati taj metod bez instance (nije selektovana u forms editoru ili nije aktivna). Zbog toga treba da uradis ovo na pocetku:

if (context == null || context.Instance == null || provider == null)
return;
[ twister @ 17.06.2003. 03:45 ] @
Ok, to sam resio sa try/catch (da ne izbacuje gresku), ali onda se, normalno, nista ne desi (kao i u tvojoj varijanti); tj. ne mogu da promenim property uz pomoc mog editora. Nisam se precizno izjasnio, nije problem da samo izbegnem gresku, vec i da UVEK mogu da koristim svoj property editor i da UVEK taj property editor zna koje su komponente na formi.