[Record] DevExpress : AccordionControl

RedCock·2023년 1월 4일

Dev Tip

목록 보기
1/2

// Main.xaml

<dxa:AccordionControl 
                ItemsSource="{Binding MenuViewItems}" 
                ChildrenPath="Menus"
                Width="200"
                SelectedItemChanged="AccordionControl_SelectedItemChanged"/>

// ViewModel

public class MenuViewModel
{
    public string Name { get; set; }
    public ObservableCollection<MenuModel> Menus { get; set; }

    public MenuViewModel(string name, IEnumerable<MenuModel> menus)
    {
        Name = name;
        Menus = new ObservableCollection<MenuModel>(menus);
    }
    public override string ToString()
    {
        return Name;
    }
}

// DataModel

public class MenuModel
{
    public string Group { get; set; }
    public string Name { get; set; }

    public override string ToString()
    {
        return Name;
    }
}

public static class MenuItems
{
    public static List<MenuModel> GetMenuItems()
    {
        List<MenuModel> items = new List<MenuModel>();
        items.Add(new MenuModel() { Group = "SETTING", Name = "Password" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object1" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object2" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object3" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object4" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object5" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object6" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object7" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object8" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object9" });
        items.Add(new MenuModel() { Group = "OBJECTS", Name = "Object10" });

        return items;
    }
}

// Result

profile
C#으로 개발하는 붉은 닭 띠 아들의 아빠

0개의 댓글