Ektron’s Menu feature lets users create and maintain a drop-down menu system for your Web site. The menu options can link to content, library assets, external hyperlinks, and submenus. Below is a sample menu.
In this example (delivered with Ektron OnTrek sample site), the menu appears when a site visitor moves the cursor over Products on the home page. If a content contributor with permission to edit menus signs in to Ektron then views the menu, it has options for editing the menu and adding content.
WARNING! If you choose to hide the border that surrounds content when you are logged in, the Add and Edit options are also hidden. This lets you view the page as it appears when not logged in. If the page is set to show borders and you still do not see Add and Edit, the feature may be turned off. Ask your administrator or Web site Developer for more information.
Managing menus is a two-step process. The first sections in this chapter describe the first step: how Ektron users create and update menus. In the second step, a developer places a menu server control on a Web form. The control manages how the menu displays on your Web site.
There are 3 ways to access the Menus feature:
If you choose the first or second option, you select a specific menu. Then, it appears on the View Menu screen. For the third option, the selected menu appears on the View Menu screen.
From the View Menu screen, you can perform the following actions on a menu.
To work with menus, a user must be one of the following.
You can create a menu by navigating to a folder or by choosing Content > Menus from the Workarea’s left frame. If you choose Content > Menus, it is automatically assigned to the root folder. In contrast, if you choose a content folder then create a menu, it is assigned to that folder.
Fields on the Add/Edit Menu Screen
Field | Description |
The name given to the menu by its creator. It appears on the Web page to indicate the kind of information on the menu. | |
You can have an image appear next to or instead of the menu title. For example: To do this: Prerequisite: The image must reside in the library. If it does not, add it before proceeding. For more information, see Copying a File to the Library.
Using Image to Replace Title Text Alternatively, you can replace menu text with an image, so that only the image appears on the menu. To do this, check the Use image instead of a title box. | |
After you create a menu, your developer links it to text or an image on a Web page by modifying a page template. When a site visitor moves the cursor over the text or image, the menu appears. In the example below, the menu appears when the site visitor moves the cursor over Products. You can also assign a URL link to a menu using this field. If you do, and the user clicks the link text or image, he jumps to the specified page. For example, in this field, you assign the product landing page, Entering the Path to the Landing Page The path may be
| |
NOTE: This field applies to content only. It has no effect on other types of menu items (such as images). Also, this field only affects content that dynamically references a content block, such as If you want to apply a template to this menu, enter it here. If you do, content on this menu uses this template when selected from the menu. If you do not, this menu's content uses the template specified in its Quicklink. | |
Add a more detailed description for the menu. | |
Folder Associations | |
Template Associations |
After creating the menu, you may assign items to it. See Adding a Menu Item.
If you choose a content folder then create a menu, it is assigned to that folder.
After creating the menu, you may assign items to it. See Adding a Menu Item.
There are 3 ways to add a menu item.
To add a menu item via a content folder:
The Add New Item screen displays a list of items you can add to the menu. Use to the table below to select a type of menu item, and follow the steps to add it.
Menu item type | For more information, see |
Content | |
Any library asset: image, file, Quicklink, hyperlink to the menu | |
External hyperlink | |
Submenu |
Fields on the Add/Edit Menu Item Screen
Title—The name of the menu item. It appears on the Web page to indicate the item.
Image Link—You can have an image appear next to or instead of the menu title. For example:
To do this:
NOTE: Before beginning these steps, the image must reside in the library. If it does not, add it before proceeding. For more information, see Copying a File to the Library.
Replacing Title Text with Image
Alternatively, you can have the image replace the menu text, so that only the image appears on the menu. To do this, check the Use image instead of a title checkbox.
URL Link—After you create a menu, your developer links it to text or an image on a Web page by modifying a page template. When a site visitor moves the cursor over the text or image, the menu appears. In the example below, the menu appears when the site visitor moves the cursor over Products.
You can also assign a URL link to a menu using this field. If you do, and the user clicks the link text or image, he jumps to the specified page.
For example, in this field, you assign the product landing page, siteroot/products.aspx
. In the illustration above, if the user moves the cursor over Products, the assigned menu appears. However, if the user clicks Products , he jumps to siteroot/products.aspx
.
Entering the Path to the Landing Page
The path may be
siteroot/jobs.aspx
wellness.aspx?id=40&wellness=Hemophilia
http://www.example.com
.Description—Add a more detailed description for the menu.
Target—
Determines the type of window that appears when you click a link in the server control.
Link—Use this field if you want to override this content's menu template by using the template specified in its Quicklink.
WARNING! If you check items then proceed to another screen before clicking Add, the items on the first screen are not added to the menu.
As an alternative, navigate to a content folder, click items to be assigned, right click the mouse and select Copy. Then, locate the menu, right click the mouse, and select Paste Items to Menu.
The View Menu screen reappears, showing the new content.
To add a library asset as a menu item via a content folder or menus tab:
NOTE: To insert assets, the menu’s folder must contain library assets. However, you can insert library assets from other folders for which you have permission.
To add an external hyperlink as a menu item via a content folder or the Menus tab:
www.example.com
.NOTE: When you add an external hyperlink menu item, the URL does not get added to the library nor is an ID assigned to it. So, when you save the menu item, it is not added to the Ektron database nor can it be retrieved for future use.
NOTE: You can only use this feature after your Web developer has modified a page template to display the menu. For more information, see Introduction to Menu Server Controls.
This section describes each option for editing a menu's properties.
Alternatively, hover the cursor over the menu in the left panel, right click the mouse, and click View Properties.
Just like editing a menu, you can view a menu via...
When viewing a menu via the content or menu folder, you get an internal view of information entered by menu creator. When viewing via a navigation link on a Web page, you get an external view of the menu, as seen by anyone navigating Web site.
NOTE: If your Workarea language is set to all languages, you cannot view child menus—only parent menus. To view a child menu, select its parent menu's language, using the View > Language menu option.
Alternatively, hover the cursor over the menu in the left panel, right click the mouse, and click Reorder Items.
The Reorder Items screen appears.
NOTE: Deleting a menu automatically deletes all menu items associated with it. Do not confuse the menu link with the item itself. For example, deleting a menu deletes its links to content but has no effect on the content.
NOTE: For background information about supporting multiple languages on your Web site, see Working with Menus in a Multi-Language System.
You can create an edition of any menu in every supported language. When a site visitor selects a language and clicks a menu link, Ektron displays the menu in that language if it is available. If it is not available, nothing appears.
Before creating or translating a menu, it’s a good idea to create or translate all content that will be on the menu. In this way, you can link this content to the new menu. However, after creating a menu, you can add new items to it.
To translate a menu into any supported language: You can navigate to the menu via the Web site or from the Workarea. Each procedure is described below.
The View Menu screen appears for the selected menu.
The Add Menu screen appears.
The Add Menu screen appears.
If all of the following conditions apply...
EnableSmartOpen
property is true appears on the screen...the Flex Menu automatically displays the items on the associated submenu.
NOTE: Navigation to the content can consist of clicking a quicklink, a menu option, a list summary item, the result of a search, and so on.
In effect, you are instructing Ektron to expose a menu whenever a content item that resides in a selected folder appears. As a result, a user looking for a specific item sees similar items.
As an example, assume your Web site sells books, and folders are organized by genre. One of your folders is “Teen Fiction.” You create a submenu that contains the top 5 sellers in “Teen Fiction.” You then associate the Teen Fiction folder with that submenu. When a site visitor finds views a book in that category, a Flex Menu in the page’s left column displays the top 5 Teen Fiction titles.
The Select Folder screen lets you assign new folders to a menu, reorder folders, and delete folders from the menu association. These tasks are described below.
When you click Change below Folder Associations on the Edit menu screen, the Select Folder screen appears.
The following table describes tasks you can perform on these screens.
Task |
Instructions |
Add folder to list |
|
Remove folder from list |
|
Remove all folders from list |
|
Move a folder up or down on the list NOTE: The folders' sequence has no impact on how they are used. It only affects the appearance of the Select Folders screen. |
|
Save changes and return to Edit Menu screen |
Click Save. |
Exit screen; do not save changes |
Click Exit (). |
If all of the following conditions apply....
EnableSmartOpen
property is true appears on the screen...the Flex Menu automatically displays the items on the associated submenu.
NOTE: Navigation to the content item can consist of clicking a quicklink, a menu option, a list summary item, the result of a search, and so on.
In effect, you are instructing Ektron to expose a menu whenever a content item that uses one or more selected templates appears on the screen. As a result, a user who begins looking for a specific content item sees similar items.
As an example, assume your Web site sells books, and your templates are organized by genre. One of your templates is “Teen Fiction.” You create a submenu that contains the top 5 sellers in “Teen Fiction.” You then associate the Teen Fiction template with that submenu. If a site visitor visit a page describing the book, the Flex Menu in the page’s left column displays the 5 top Teen Fiction titles.
To later change or remove the template, select it then click Change or Remove.
Managing menus is a two-step process. The previous section describes the first step, which is how Ektron users create and update menus. The second step involves a developer placing a menu server control on a Web form. The server control manages the display of the menu on your Web site. This section introduces concepts that affect all of them, and explains the differences between them.
NOTE: The DHTML Menu server control has been deprecated. Ektron recommends using the Flex Menu control instead.
Ektron provides 2 menu server controls.
Property |
Flex Menus |
Menu |
508 compliant |
|
|
Shutter menu (When you click a menu, it opens directly below the menu title) |
|
|
Secondary menu opens when cursor hovers over it |
(alternative: secondary menu opens when clicked) |
|
Starts out collapsed; expands as site visitor selects secondary menu |
|
|
All menu levels open when page displays |
(optional) |
|
Can display secondary menu to the right of the root menu, instead of directly below it |
(optional) |
|
How appearance is modified |
Server control properties and style sheet |
Xslt and style sheet |
How behavior is modified |
Xslt |
Xslt and style sheet |
Option to launch menu links in a new window |
|
|
The Flex Menu server control displays a menu on a Web form. A Flex Menu creates XML, so you can modify its behavior using an XSLT file, and change its appearance using a cascading style sheet (.css) file.
NOTE: Before you can use this server control, you must create one or more menus in the Ektron Workarea. See Also: Working with Menus.
See Also: Contrasting Menu Server Controls
To facilitate the deployment of Flex menus, Ektron provides several sample menus that show their capabilities. You can use whichever sample meets your needs, then modify it for your site.
The sample menus can be viewed from the Developer Sample Page (siteroot/Developer/default.aspx
) > Menu—Flex.
NOTE: The Flex Menu server control generates the same XML for all samples, and identical copies of the Demo.xsl create identical markup for all samples. The different manifestations in the samples are due to the CSS styling rules in the related files.
Sample |
Description |
Location on Server |
The only sample menu for which Ajax is enabled by You may not notice the speed on small menus, but with large menus, the speed improvement is significant. NOTE: The first time an Ajax-enabled menu is invoked, it is slow because the server is building it. After that, its response time should be quicker than non-Ajax menus. How the Menu Works
WARNING! This sample is meant to visually display a menu being populated via an Ajax call, as a user drills into it. This demo is not meant to be part of a public site. Rather, it demonstrates how a Flex Menu with Ajax improves performance. WARNING! When using Ajax with the Flex Menu (by setting |
|
|
|
/Menu /FMExpandDemo.aspx |
|
|
|
|
Horizontal |
Site navigation often requires the placement of a horizontal menu in the upper part of the page. The Horizontal Flex Menu sample is a working menu with XSLT and CSS (as well as Flex Menu configuration settings) that provides a basis for this design. The sample's CSS file dramatically alters the appearance and behavior of this Flex Menu. You will typically edit that file to accommodate your site's design (colors, background images, and so on).
|
|
Lightweight |
This menu generates much simpler markup (consisting of The jQuery code is located on the sample page:
|
|
|
|
|
XML Modify |
This menu demonstrates how to significantly modify a menu's behavior by adding custom code in the code-behind file. In particular, it demonstrates use of the control's
|
siteroot/Developer/Menu
|
508 compliance |
This sample demonstrates a Section 508 compliant menu. The markup provides site navigation clues to web-page readers, including Braille-readers and text-to-speech. NOTE: To truly be 508-compliant, you must also implement a color scheme that provides the intended information to blind or visually-impaired users. Because color selection is determined by the site design, this task is left to the site designer.
|
siteroot/Developer/Menu
|
Master Page | See ASP.NET Master-Pages Flex Menu |
The Ektron Master Page sample leverages the ASP.NET master page concept with Ektron folder-templates to simplify the design and maintenance of site pages with multiple menus. The top menu is contained by the master page, while each side menu is contained in a corresponding child-content template page.
Note that all menus use the same root menu, in this example DefaultMenuID="89"
. Each side menu also has a particular starting child-node: StartMenuId="90"
(or 91, 92).
The master page menu
To ensure that the proper (child-content) template page is loaded, each folder specifies the corresponding target ASPX page as its default template, and the content's quicklink specifies the template URL. Therefore, whenever a particular content item is shown, the referenced template is loaded, and the proper side menu appears.
Folder templates
The sample's files include the following:
Demo.xsl
—this single XSLT generates markup for all menus (top and side). If desired, you may specify different XSLTs.side_expand.css
—contains the style rules applied to the side menus.Template1.aspx
—the first child-content template; contains a side menu that starts at submenu ID 90. The corresponding code-behind CS file is basically empty.Template2.aspx
—the second child-content template; contains a side menu that starts at submenu ID 91.Template3.aspx
—the third child-content template; contains a side menu that starts at submenu ID 92.top_horizontal.css
—contains the style rules for the top menu.TopMenuMasterPage.master
—holds the top menu and is a container for the previously mentioned templates.Because side menus are contained in template pages, which are specified in the content's quicklink, all menu display actions are automatic. While customization options are available, these can quickly complicate matters, making maintenance more difficult and possibly resulting in unintended consequences. For example, a desired action is overridden by a customization added for another purpose.
Customization options include:
To create a menu based on a sample:
Ajaxdemo.aspx
to myflexmenu.aspx
, AjaxDemo.css
to myflexmenu.css
, and demo.xsl
to myflexmenu.xsl
.
WARNING! If you specify an external file, do not store it in your site's Workarea folder to prevent it from being overwritten when you upgrade.
IMPORTANT: The renamed .css file name must be all lowercase.
stylesheet
and DisplayXslt
properties to refer to the new .css and .xsl files.If the files do not reside in the template’s folder, indicate their relative path using the syntax where slash (/) indicates the site root.
.ajaxdemo .ekflexmenu { /* DIV; wraps the entire menu */ /* (the outer-most non-user container element) */ color: rgb(0, 0, 255); /*width: 148px;*/ font-size: 12px; font-family: Sans-Serif; } .ajaxdemo .ekflexmenu_submenu, .ajaxdemo .ekflexmenu_submenu_hover, .ajaxdemo .ekflexmenu_submenu_parent, .ajaxdemo .ekflexmenu_submenu_parent_hover { /* DIV; holds submenu items, such as a submenu title and links. */ top: 0px; left: 0px; } .ajaxdemo UL { /* UL; a container for menu list items (useful for non-graphical browsers). */ /*list-style: none; /*margin: 0px; padding: 0px;*/ }
Notice that every class begins with the file name, .AjaxDemo. Replace all occurrences of this with the new file name. To continue the above example, begin all classes with .myflexmenu.
This section explains some non-intuitive elements of the *.xslt file.
Element |
Context |
Description |
MenuFragment |
|
A flag that indicates the XML data is not complete. Instead, it’s a fragment that begins deeper than the top level (for example, a submenu fragment). Because the data is incomplete, the XSLT processes the fragment differently. For example, don’t generate JavaScript startup code. |
menuConst |
|
Each menu generates several elements, which the client code (JavaScript) accesses via a unique ID. For example, JavaScript needs to identify the selected submenu or item when a user clicks on an element.
|
#NoScroll |
|
|
event |
|
To make the xslt cross-browser compatible, it must support different methods of obtaining/passing the event object. In this example, the global event object is passed to the handling function. NOTE: |
The Flex Menu server control has the ability to select (highlight) options in a Flex menu as site visitors navigate around the Web site. For example, a site visitor arrives at a Web page through a link in an email. If the QueryString matches the an item in a Flex menu, the item is shown as selected.
Below is the logic the Flex menu uses to decide when a menu item should show as selected. The list is presented in the order in which the code checks to see if an item should be highlighted.
If any menu item is selected, its parent menu is marked selected. If any menu is selected, all ancestor menus are selected. When all tests have been performed and no matches are found, the Flex menu is rendered with no items selected.
WARNING! As soon as one condition is satisfied, the item is shown as selected and the testing stops.
NOTE: Steps 2 through 8 are each repeated recursively throughout the menu data hierarchy until either a match is found or the end is reached. If there are no matches for a test, the control continues with the next one.
ekxmensel
parameter is present with a matching menu node ID. This parameter is used to specify the exact node a user clicked. The node, its parent, and ancestor menus are all marked as selected.ExamplePage.aspx?id=123
, and a menu item links to Content ID 123.ExamplePage.aspx?ekfrm=456
, and a menu item links to Form ID of 456.ExamplePage.aspx
and there is an item on the menu that matches, the menu item is shown as selected.id
, ekfrm
or pageid
parameter. If one is found, the control looks for a folder association between submenus and the folder that contains the object with the given ID. If the association exists, the menu item is shown as selected.ExamplePage.aspx
and there is a button on the menu that matches.id
or ekfrm
parameter and whether a value greater than zero is associated with it. If so, the control checks menu buttons for use of LinkIt.aspx
. If a button is using LinkIt.aspx
and either id
or ekfrm
parameter matches, the menu button is selected.As you can see, the Flex Menu server control performs a complex sequence of tasks to determine which menu option to select. If you are unsure of a Flex Menu's behavior, you can view a log that lists the reasons for a menu selection. Use the log to troubleshoot issues with a Flex Menu.
Follow these steps to set up the ability to view a log of Flex Menu display information.
site root/web.config
file.system.diagnostics
, set LogLevel
to 4. Save and close web.config.LogInfo
property to true and save the page.<CMS:FlexMenu ID="FlexMenu1" LogInfo="True" runat="server" />
NOTE: It may be helpful to temporarily disable the menu's cache by setting CacheInterval="0"
.
The event message identifies the reason the menu node was selected. Or, if no matches were found, the message indicates that nothing is selected.
The following are Ektron-specific server control properties. You can find information about native .NET properties such as font, height, width and border style in Visual Studio® help.
Indicates if you are logged into the CMS Explorer and can use it to browse to content, collections, and so on. See Also: Browsing Your Ektron Site Using CMS Explorer.
The number of seconds that the server control’s data is cached. The default is 0 (zero). For example, if you want to cache the data for 5 minutes, set to 300. See Also: Caching with Server Controls.
The ID of a menu that appears where you insert this server control if no other menu is identified or available. If you don’t know the ID number of the menu, use the CMS Explorer to browse to it. See Also: Browsing Your Ektron Site Using CMS Explorer
NOTE: If you want to change the Default menu's Starting menu, use the StartMenuID property.
If desired, enter a relative or absolute path to an Xslt that determines the display of the page. If nothing is specified, the menu is output as raw XML. Flex menus are designed to use the xsl file to control the menu’s behavior, and the .css file to control its display. Ektron provides several sample menus, and each has an xslt file. If this is a new menu, you may find it easier to copy and edit an xslt file provided with a sample menu. See Also: Sample Menus
WARNING! If you specify an external file, do not store this file in the Workarea folder. If you store this file in the Workarea folder, the file will be lost when you upgrade.
By default, Fill occurs during the Page_Init event. Set to false if you want to postpone the fill-action until later. In this case, Fill is automatically called during the Page Render event. You might do this if you need to set or change a property on the control in code-behind and have it render with your changes shown.
Set to True to enable Ajax, which only downloads sub-menus as needed. See Also: AjaxDemo
Lets you prevent submenus from opening by default. Under some circumstances, such submenus look cluttered.
Only use this property if you are setting up a master/slave menu relationship, and this menu is the slave. If both are true, enter the ID of the master menu.
To let site visitors browse through all menu levels, enter zero (0). To restrict site visitors to a menu level, enter the number of the lowest level. In the following example, if you set this property to 1, a site visitor can browse through the About Us menu options but would not see the level 2 options (Company Profile and Careers).
If you set to True, when the menu first appears, all submenus are closed.
Enter a number to indicate the level at which you want this menu to display when it first appears. To begin the menu display at the root level, enter zero (0). In the following example, the Home folder is level 0. The others are level 1.
A site visitor can click a menu option to navigate to folders below the displayed level.
NOTE: If you set a StartMenuID, the StartLevel property is ignored.
Use this property to have the default menu begin somewhere other than its root.That is, at any submenu under the default menu. For example, menu ID 46 (Products) is the default menu. However when that menu displays, you only want to show its submenus, beginning with Products Support (ID 58). In this case, enter 46 into the DefaultMenuID
property and 58 into the StartMenuID
property.
NOTE: If you set a StartMenuID, the StartLevel property is ignored.
Enter the style sheet that will determine the appearance of the menus. Flex menus use an .xsl file to control their behavior, and a .css file to control their display. Ektron provides several sample menus, and each has a .css file. If this is a new menu, you may find it easier to copy and edit a .css file provided with a sample menu. See Also: Sample Menus
When set to True, suppress the Add and Edit buttons on the menu when a user is logged in to Ektron. The default is False.
This property is set to false
because Ajax uses <div>
tags to rewrite the region around the tag. You cannot change the value to true
.
Lets a developer specify a server control’s tag.
The Menu server control calls a menu to be displayed on a page. Using the Menu server control, you can manipulate a menu by using the DisplayXslt
property. Below is a menu display with the SampleMenu XSLT.
Before you can use the Menu server control, you must create a menu in the Ektron Workarea. To learn about creating menus, Working with Menus.
See Also: Contrasting Menu Server Controls
The following are Ektron-specific server control properties. You can find information about native .NET properties such as font, height, width and border style in Visual Studio® help.
Indicates if you are logged into the CMS Explorer and can use it to browse to content, collections, and so on. See Also: Browsing Your Ektron Site Using CMS Explorer.
The number of seconds that the server control’s data is cached. The default is 0 (zero). For example, if you want to cache the data for 5 minutes, set to 300. See Also: Caching with Server Controls.
The ID of a menu that appears where you insert this server control if no other menu is identified or available. If you don’t know the ID number of the menu, use the CMS Explorer to browse to it. See Also: Browsing Your Ektron Site Using CMS Explorer
The XSLT to use to render the menu.
For more information on using the SampleMenu and TreeMenu DisplayXslt, see Using DisplayXslt Samples.
WARNING! If you specify an external file, do not store this file in the Workarea folder. If you store this file in the Workarea folder, the file will be lost when you upgrade.
By default, Fill occurs during the Page_Init event. Set to false if you want to postpone the fill-action until later. In this case, Fill is automatically called during the Page Render event. You might do this if you need to set or change a property on the control in code-behind and have it render with your changes shown.
Select menu_id. When you do, this server control uses the menu passed as a URL parameter.
Hides or displays the output of the control in design time and run time.
Set a language for viewing content; shows results in design-time (in Visual Studio) and at run-time (in a browser).
For more information, see Working with Menus in a Multi-Language System.
Specify the location and style sheet for the menu. For example: \Workarea\csslib\mytest.css.
Leave blank to use the default. global.css
is the default style sheet. It is located in \webroot\siteroot\Workarea\csslib
.
When set to True, suppress the Add and Edit buttons on the menu when a user is logged in to Ektron. The default is False.
Suppresses the output of the span/div tags around the control.
Lets a developer specify a server control’s tag.
Two DisplayXslt samples are provided with the Menu server control, SampleMenu and TreeMenu. This section explains how to use them.
WARNING! If you specify an external file, do not store this file in the Workarea folder. If you store this file in the Workarea folder, the file will be lost when you upgrade.
The SampleMenu DisplayXslt lets you display an Ektron menu as a bulleted item list. See below for an example.
When you are logged in to your Ektron site, 2 menu items are added to each section of the menu: Add and Edit Menu. The user can use these to add a new menu item or edit an existing one. See example below.
For information on a adding a menu item, see Adding New Content to a Menu via Navigation Link on a Web Page.
For information on a editing a menu, see Editing a Menu's Properties via Navigation Link on a Web Page.
For an example of the XSL code used in the SampleMenu, click the following link and choose the appropriate version.
The TreeMenu DisplayXslt lets you display an Ektron menu as a clickable folder list. You can expand and collapse the menu by clicking on the folder icons.
When you are logged in to your Ektron site, 2 menu items are added to each section of the menu: Add and Edit Menu. The user can use these to add a new menu item, or edit an existing menu item. See example below.
For information on a adding a menu item, see Adding New Content to a Menu via Navigation Link on a Web Page.
For information on a editing a menu, see Editing a Menu's Properties via Navigation Link on a Web Page.
NOTE: When using the TreeMenu server control with Visual Studio and Windows 2003, the folder images do not display during design-time. They do, however, display correctly during run-time.
For an example of the XSL code used in the MenuTree, click the following link and choose the appropriate version.
Retrieving a menu's XML structure provides greater control over developing XSLs. The following is an example of how to retrieve the XML structure:
DefaultMenuID
properties.TextMode
property to MultiLine.Textbox1.Text = Menu1.XmlDoc.InnerXml
For an additional example, see the Menu XML page on the CMS400Developer samples page. It is located at:
In a browser:
http://siteroot/CMS400Developer/Developer/Menu/MenuAsXML.aspx
In the source code:
siteroot/CMS400Developer/Developer/Menu/MenuAsXML.aspx and MenuAsXML.aspx.vb