Zmienna z metody dostępna poza nią?

[code]public static string SkinName; static void SkinWindow() { XmlDocument SkinConfig = new XmlDocument(); SkinConfig.Load("c:\\Users\\maspi\\Desktop\\skin.xml"); SkinName = SkinConfig.SelectSingleNode("/skin/@name").Value; } public string test { get { return SkinName; } }[/code] Rezultat jaki otrzymuję to pusta zmienna SkinName. Chciałbym otrzymać to, co przypisuję w funkcji SkinWindow. Rozumiem, że przypisanie wartość przypisana w metodzie istnieje tylko dla tej metody. Jak udostępnić wartość z metody tak, żebym miał do niej dostęp gdzie indziej?

Odpowiedzi: 3

A skąd pobierasz wartość do tego stringu, to co masz napisane to tylko podczas używania SkinWindow dodajesz wartość inną. czyli jak zurzyjesz obiekt_tej_klasy.SkinWindow i tylko teraz się zmieni jego wartość. to jest normalnie.
Sfinks
Dodano
26.09.2007 19:22:28
Ale deklaracja zmiennej jest w tej samej klasie w której cała reszta. Powyższy kod znajduje się w jednej klasie.
maspi
Dodano
26.09.2007 16:58:31
Jeśli masz public static string SkinName, to gdzie indziej możesz mieć dostęp do niego przez obiekt tej klasy gdzie się znajduje deklaracja SkinName. czyli przypuśćmy deklarowałeś tego stringa w klasie MyKlas. to w dowolnym miejscu projektu możesz robić tak(nawet w zdarzeniu w innym metodzie innego klasu) [code] MyKlas obj=new Myklas()//oczywiście konstruktor z istniejącymi parametramy jakiśString= obj.SkinName; [/code] A inna sprawa gdy ten SkinName jest private, wtedy też przez obiekt wywołujeś właściwośc set.
Sfinks
Dodano
26.09.2007 15:58:16
maspi
Dodano:
26.09.2007 15:10:34
Komentarzy:
3
Strona 1 / 1