2012-12-12 2 views
1

내 응용 프로그램은 asp.net MVC입니다; Telerik MVC Tree 뷰를 사용하여 모델에서 노드를 표시하면 노드 하나의 값이 null 인 경우를 제외하고는 잘 작동합니다.ASP.NET MVC - Telerik MVC TreeView 모델에 바인딩

여기 내 트 리뷰입니다 :

<% IEnumerable<MyTreeNode> tree = ViewBag.TreeData.Nodes; %> 
<%= Html.Telerik().TreeView().Name("TreeView").BindTo(tree, mappings => 
     { 
    mappings.For<MyTreeNode>(binding => binding.ItemDataBound((item, myTreeNode) => { 
            item.Text = myTreeNode.Text; }) 
            .Children(myTreeNode => myTreeNode.Nodes)); 
            }) 
    .ClientEvents(events => events.OnSelect("onSelect")) %> 

나는 다음과 같은 오류 (myTreeNode.Text를 가리키는) "값"null 또는 비어있을 수 없습니다를 얻을.

내가 시도 :

if (!IsNullOrEmpty(item.Text)) 
    { 
     item.Text = myTreeNode.Text; 
    } 

나는이 오류 얻을 : 이름을 'IsNullOrEmpty'현재 컨텍스트에 존재하지 않습니다.

미리 감사드립니다.

답변

0

IsNullOrEmpty()는 스트링 클래스에 정적 메소드를 호출한다.

if(!string.IsNullOrEmpty(item.Text)) 
{ 

} 
+0

감사합니다 Tim, 당신의 솔루션은 잘 돌아갔습니다. 그러나 TreeView 볼 수 있지만 텍스트가 없습니다. null 또는 빈 값을 가진 노드를 제거하는 방법이 있습니까? – hncl

+0

저는 Telerik Treeview에 100 % 익숙하지 않습니다. 그러나 일반적으로 바인딩에 대한 일반적인 경험 법칙은 소스 데이터를 조작하여 데이터에 바인딩하는 컨트롤이 아닙니다. 즉, 비어있는 항목을 표시하지 않으려면 소스 목록에서 제거하십시오. –

+0

감사합니다. Tim, 모델을 확인하겠습니다. – hncl

0

시도해 보셨습니까?

item.Text = (myTreeNode.Text != null) ? myTreeNode.Text : "" 

또는

item.Text = (myTreeNode != null) ? myTreeNode.Text : "" 
+0

감사합니다. Alex, 저는 여전히 ("value"는 null 또는 비어 있습니다.) 오류가 발생합니다. – hncl