2010-05-24 13 views
10

Wiązałem listę enum do combobox. Teraz chcę uzyskać SelectedItem zwrócenie wyliczenia, które obecnie zwraca go jako typ object. Jak mogę przekonwertować ten obiekt na moje wyliczenie?Konwertuj obiekt do wyliczenia C#

Mój framework jest Silverlight na windows-phone-7

+0

Czy próbowałeś typecast? –

Odpowiedz

17

Obsada go bezpośrednio:

MyEnum selected = (MyEnum)cboCombo.SelectedItem; 

pamiętać, że nie można używać as obsady w tym przypadku, ponieważ w Enum jest typ wartości.

+0

Wow, to działa teraz. Z jakiegoś powodu kompilator powiedział mi, że 'MyEnum' jest używane jako zmienna w tym dokładnym stwierdzeniu. –

+0

@ Jon Seigel dobre wywołanie komentarza "jako". Czy program Visual Studio wykonuje tutaj "odpakowanie" za kulisami? – gonzobrains

4

Próbował pan jest ??

YourEnum abc = (YourEnum) Enum.Parse(typeof(YourEnum), yourObject.ToString()); 
+1

Może to działać z właściwością ciągu, ale nie z 'SelectedItem'. – leppie

+0

@leppie: Myślałem, że z jakiegoś powodu, typing nie działa dla OP, więc może spróbować tej sztuczki. – viky