Bind to Enum c#


Rozważmy taką sytuację. Mamy jakiś Enum i chcemy wybrać jego wartość przy pomocy listy wyboru. Chcemy, aby użytkownik widział ładnie wyświetlone opisy dla każdej wartości. Tymczasem w tle dokonujemy ładnego Bindowania Enum tak, aby wszystkie wartości naszego typu wyliczeniowego zostały wyświetlone w liście wraz z opisami.

Bindowanie Enum

Definicja enum

Definiujemy nasz typ, a razem z nim opisy. Opis nie jest ograniczony do jednego słowa oraz znaków ASCII. Jeśli nie zdefiniujemy opisu, wówczas wykorzystana zostanie nazwa pola.

Bindowanie

Kiedy chcemy wyświetlić listę dostępnych wartości dla typu Enum, robimy to tak:

Bindowanie Enum

Kod metody GetValueDescriptionEnumerable

Żeby to zadziałało, potrzebujemy prostej metody pomocniczej.

Zalety powyższej metody:

  • opis trzymamy zawsze blisko definicji enum,
  • unikamy ręcznego mapowania wartość ↔ opis.

One thought on “Bind to Enum c#

  1. Fajny wpis. Przyznam, że potrzebowałem nie raz wyświetlać enuma w comboboxie i zawsze przemapowywałem -> pisałem adaptery do mapowania.
    Ta opcja jest fajniejsza gdyż na samym enumie już mamy opisy. Dzięki.

Dodaj komentarz

Twój adres email nie zostanie opublikowany.