2

フロントユーザーがいくつかのチェックボックスフィールドを変更できるようにするには、 editframe を使用する必要があります

  1. 新しい編集フレーム ボタンを作成し、フロント ユーザーに編集させたいフィールドのみを設定します。例: Core DB -> /sitecore/content/Applications/WebEdit/Edit Frame Buttons/(編集ボタン フォルダー)/(フィールド エディター ボタン)。フロントユーザーが編集するフィールドでは、見出しに設定しました。

  2. 私のサブレイアウトには、このコードがあります

    <sc:EditFrame ID="EditField" runat="server" Buttons="/sitecore/content/Applications/WebEdit/Edit Frame Buttons/EditFields">
    <div id="whatyoumissed">
        <asp:ListView ID="ListView1" runat="server">
            <LayoutTemplate>
                <ul style="list-style-type: none;" >
                    <asp:PlaceHolder runat="server" ID="itemplaceholder"></asp:PlaceHolder>
                </ul>
            </LayoutTemplate>
    
            <ItemTemplate>
                <li style="float: left;margin-left:20px;">
                    <sc:FieldRenderer ID="FieldRenderer2" runat="server" FieldName="Headline" 
                    Item="<%# Container.DataItem as Sitecore.Data.Items.Item %>" /> <br />
                    <sc:FieldRenderer ID="FR3" runat="server" FieldName="cb" Item="<%# Container.DataItem as Sitecore.Data.Items.Item %>" />
                </li>
            </ItemTemplate>
        </asp:ListView>
    
    </div>
    </sc:EditFrame>
    
  3. コードビハインド

        string queryPath = "/bla/bla/bla/bla/bla/bla/bla/bla/bla";
        var item = sc.Context.Database.GetItem(queryPath);
        var children = item.Children;
        ListView1.DataSource = children;
        ListView1.DataBind();
    

ページ エディターで編集フレームをクリックすると、プロンプト ボックスに変更するためのフィールド (見出し) がありません。なにか提案を?

回答: サイトコア エディット フレーム データソースの Google abit があり、このリンクで終了します http://blog.jan.hebnes.dk/2011/12/using-sitecore-editframe-with.html

Martijn Bos が示したコード ビハインドを使用する代わりに、コードを前から次のように変更します。

<asp:ListView ID="ListView1" runat="server">
            <LayoutTemplate>
                <ul style="list-style-type: none;" >
                    <asp:PlaceHolder runat="server" ID="itemplaceholder"></asp:PlaceHolder>
                </ul>
            </LayoutTemplate>

            <ItemTemplate>
                <sc:EditFrame ID="EditField" runat="server" Buttons="/sitecore/content/Applications/WebEdit/Edit Frame Buttons/EditFields"
                DataSource="<%# ((Sitecore.Data.Items.Item)Container.DataItem).Paths.FullPath %>" >
                    <li style="float: left;margin-left:20px;">
                        <sc:FieldRenderer ID="FieldRenderer2" runat="server" FieldName="Headline" 
                        Item="<%# Container.DataItem as Sitecore.Data.Items.Item %>" /> <br />
                        <sc:FieldRenderer ID="FR3" runat="server" FieldName="cb" Item="<%# Container.DataItem as Sitecore.Data.Items.Item %>" />
                    </li>
                </sc:EditFrame>
            </ItemTemplate>
        </asp:ListView>
4

2 に答える 2

0

あなたはほとんどそこにいます。"FullPath" は使用しないでください。代わりにこれを試してください

 DataSource="<%# ((Sitecore.Data.Items.Item)Container.DataItem).Paths.FullPath %>"
于 2015-05-08T06:11:59.473 に答える