0

umbraco 4.8 で新しいセクションを作成しているので、そのセクションのカスタム ツリーを作成したいと考えています。部門登録はこちら

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つの子のみをレンダリングする必要がありますが、何もレンダリングしません。

4

2 に答える 2

1

何もレンダリングしない場合、通常はエラーがスローされているが抑制されているためです。これは、次のいずれかである可能性があります。

  • 指定された型とアセンブリが一致しないため、ツリーを読み込めません
  • クラスは、抑制されているエラーをスローしました。

データベースの umbracoLog テーブルを確認すると、実際のエラーがそこに記録されているはずです。

于 2012-09-13T06:51:59.107 に答える
0

4.8 で変更されました。これが役に立つかもしれません: http://blog.mattbrailsford.com/2012/07/18/creating-custom-applications-and-trees-in-umbraco-4-8/

理論的には、私が聞いたところでは下位互換性があるはずです。あなたの構成は正しいようです。唯一の違いは、完全修飾名ではなく、treeHandlerType のクラス名のみを指定したことです。

于 2012-10-22T15:24:57.157 に答える