KeiStory

C# Blazor Radzen - RadzenTree : 자식노드 없는 경우 확장 아이콘 숨기는 방법

 

이전 포스팅에서 RadzenTree 사용법에 대해서 알아봤습니다.

https://keistory.tistory.com/1118

 

그런데 자식노드가 없는 경우에도 확장 아이콘이 표시되는 문제가 있어

자식노드가 없는 경우 확장 아이콘을 숨기는 방법을 알아봅니다.

 

RadzenTree 에는 HasChildren  속성이 있는데 이 속성이 false 이면 확장 아이콘이 표시되지 않습니다.

그래서 아래처럼 자식 노드를 확인하여 null 인 경우에 false 로 처리되도록 하면됩니다.

@page "/treeBinding"

@using Blazor.RadzenTest.Data

<h3>TreeBindingPage</h3>

<RadzenTree Data="@menus">
    <RadzenTreeLevel TextProperty="MenuName" ChildrenProperty="MenuItems" HasChildren="@((menuItem) => ((MenuItem)menuItem).MenuItems != null)" />
</RadzenTree>

@code {
    IEnumerable<MenuItem>? menus;

    protected override void OnInitialized()
    {
        MenuItem parent1 = new MenuItem() { MenuID = 1, MenuName = "부모1", MenuDescription = "부모1입니다." };
        MenuItem child1 = new MenuItem() { MenuID = 11, MenuName = "자식1", MenuDescription = "자식1입니다." };
        MenuItem child2 = new MenuItem() { MenuID = 12, MenuName = "자식2", MenuDescription = "자식2입니다." };
        parent1.MenuItems = new List<MenuItem>() { child1, child2 };

        MenuItem parent2 = new MenuItem() { MenuID = 2, MenuName = "부모2", MenuDescription = "부모2입니다." };

        menus = new List<MenuItem>() { parent1, parent2 };
    }
}

 

결과

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band