Alternativa a los enums de anidación

Estoy tratando de crear variosenums como tal, da la sintaxis deDropdown.Category.Subcategory. Sin embargo, he estado leyendo que esta no es una buena idea. Mi elección para esto fue principalmente porque no podía pensar en ninguna otra forma de seleccionar diferentesenum valores dependiendo de la elección de la categoría, y luego la elección de la subcategoría está sujeta a la selecciónenum basado en elenum valores.

¿Hay una mejor manera de crear tal funcionalidad? Preferiría poder identificar fácilmente tanto el.Category y.Subcategory nombres, y sería una ventaja si este código fuera legible.

Solo para dejarlo claro, quiero poder elegir elCategory, entonces ten un apropiadoSubcategory selección.

public class Dropdown
{
    public enum Gifts
    {
        GreetingCards,
        VideoGreetings,
        UnusualGifts,
        ArtsAndCrafts,
        HandmadeJewelry,
        GiftsforGeeks,
        PostcardsFrom,
        RecycledCrafts,
        Other
    }
    public enum GraphicsAndDesign 
    {
        CartoonsAndCaricatures,
        LogoDesign,
        Illustration,
        EbookCoversAndPackages,
        WebDesignAndUI,
        PhotographyAndPhotoshopping,
        PresentationDesign,
        FlyersAndBrochures,
        BusinessCards,
        BannersAndHeaders,
        Architecture,
        LandingPages,
        Other
    }
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta