2012-09-12 2 views
0

umbraco 4.8에서 새 섹션을 만들므로 해당 섹션에 대한 사용자 지정 트리를 만들고 싶습니다. 다음 섹션캔트 렌더링 umbraco 사용자 지정 트리

sortOrder | appAlias | appIcon | appName | appInitWithTreeAlias 
9   |importer |import.gif | Importer | NULL 

이의 등록은 해당 섹션

treeSilent = False 
treeInitialize = True 
treeSortOrder = 0 
appAlias = importer 
treeAlias = importer 
treeTitle = Importer 
treeIconClosed = legacy 
treeIconOpen = legacy 
treeHandlerAssembly = asm.ssu.importer // My DLL Name 
treeHandlerType = site.com.clients.ssu.importer.loadImporter // Namespace.ClassName 
actionn = NULL 

의 나무에 대한 레지스터는이입니다 그리고 난 그냥 필요 보듯이 내 수업

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using umbraco.cms.presentation.Trees; 

namespace site.com.clients.ssu.importer 
{ 
    public class loadImporter : BaseTree 
    { 
     public loadImporter(String application) 
      : base(application) 
     { 

     } 

     protected override void CreateRootNode(ref XmlTreeNode rootNode) 
     { 
      rootNode.Icon = FolderIcon; 
      rootNode.OpenIcon = FolderIconOpen; 
      rootNode.NodeType = TreeAlias; 
      rootNode.NodeID = "init"; 
     } 

     public override void RenderJS(ref System.Text.StringBuilder Javascript) 
     { 
      Javascript.Append(
      @" 
       function openImporter(id) 
       { 
        parent.right.document.location.href = '#' ; 
       }  
      "); 
     } 

     public override void Render(ref XmlTree tree) 
     { 
      XmlTreeNode xNode = XmlTreeNode.Create(this); 
      xNode.NodeID = "1"; 
      xNode.Text = "Import Site"; 
      xNode.Icon = "importer.gif"; 
      xNode.Action = "javascript:openImporter(1)"; 
      tree.Add(xNode);  
     } 
    } 
} 

입니다 그것을 렌더링하지만 섹션을 클릭하고 설정을 터치하면 단 하나의 자식을 렌더링해야하지만 아무것도 렌더링하지 않습니다.

답변

1

아무 것도 렌더링하지 않으면 오류가 발생하지만 억제되지 않으므로 정상적으로 처리됩니다. 때문에 클래스는 억제되고있어 오류가 발생 한 지정된 유형의 불일치 조립

    • 그것은 트리를로드 할 수 없습니다 :이 다음 중 하나가 될 가능성이 높습니다.

    데이터베이스의 umbracoLog 테이블을 확인하면 실제 오류가 거기에 기록되어야합니다.

  • 관련 문제