대쉬보드에 메뉴를 한번 만들어보려고 WPF로 트리뷰를 구현 해보고 있습니다.
현재 데이터를 만들어 화면에 출력하고 디자인 커스텀, 동작하는거 까지 완료하였습니다
public class MainDashboardPageViewModel : ViewModelBase
{
public ObservableCollection<TreeItem> Items { get; set; } = new ObservableCollection<TreeItem>();
public MainDashboardPageViewModel()
{
var treeItems = new TreeItem { Key = "1", Parent = "0", Text = "1단지", Node = 1, Select = "N" };
treeItems.Children.Add(new TreeItem { Key = "1-1", Parent = "1", Text = "사과", Node = 2, Select = "N" });
treeItems.Children.Add(new TreeItem { Key = "1-2", Parent = "1", Text = "바나나", Node = 2, Select = "N" });
treeItems.Children.Add(new TreeItem { Key = "1-3", Parent = "1", Text = "파인애플", Node = 2, Select = "N" });
var treeItems2 = new TreeItem { Key = "2", Parent = "0", Text = "2단지", Node = 1, Select = "Y" };
treeItems2.Children.Add(new TreeItem { Key = "2-1", Parent = "2", Text = "휴대폰", Node = 2, Select = "N" });
treeItems2.Children.Add(new TreeItem { Key = "2-2", Parent = "2", Text = "컴퓨터", Node = 2, Select = "Y" });
Items.Add(treeItems);
Items.Add(treeItems2);
}
}
메뉴와 하위 메뉴를 Node 1, 2로 구분하였고 Select YN을 통해 선택되는 이벤트를 구현하였습니다.
만들다보니 다른 아이템을 클릭 하였을때 기존에 Select=“Y” 를 N으로 변경하고 처리하는게
너무 수동적이다라는 생각이들었습니다.
검색을해보니 체크기능을 사용하기도하고 토글버튼을 사용을 하기도하고 다양하더라구요
어떤 방법이 가장 효과적인지 경험담좀 알려주시면 감사하겠습니다.
추가로 제가 공부하면서 만드는 트리뷰인데 검토가 가능하시면 조언좀 부탁드리겠습니다.