Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...Custom built ascx used as megamenu dropdown on JDMENUCustom built ascx used as megamenu dropdown on JDMENU
Previous
 
Next
New Post
4/6/2013 7:22 AM
 

I realize that the standard menu is based on pages. That is why I would like to create my own custom menu using an aspx control that I have created.

the parent or top level menu is standard page links:

 

The menu dropdown i want, should look like this when you mouse over Products:

Device and Function are two product categories, and their children  (iphone, ipad etc) are queried from a db. I have already created a control for the sub menu ... im just not sure how to reference it in the templates of DDR Menu

 
New Post
4/6/2013 8:01 AM
 
Ah - I certainly did not get that before.

I have no idea if there is a formal approved way of doing this, and I am no expert, but that won't stop me making a guess.

Choice 1 - probably easiest - if you can assume that all browsers will have javascript enabled

- The standard menu ultimately emits a bunch of nested lists. CSS styling gives it the menu/megamenu appearance.
- Arrange for your control to create a bunch of li elements that would style up the way you want
- Add a couple of lines of jQuery that will find the right place in the menu (you will likely have to hard code page names/tab numbers for this) and glue the li's into the rest of the menu structure.
- The menu styling takes care of the rest but if a browser has js off the user will see nothing.

Choice 2 - probably harder - but can work without js

- The standard menu uses xslt to transform some xml from the menu provider into the nested lists.
- Either work out how to make the xslt merge your code's output into the rest of what it does (I suspect this is hard, because I *hate* xslt; and I have no idea how you get your code called)
- Or merge your control code into the menu's provider to create a custom provider. I have never done that, never looked at the code involved, and I *still* suspect it might be easier than working in the xslt. So your custom provider does what it likes - createing extra xml elements; the xslt takes it on trust and creates lists; the page styling shows them in the page.

Best wishes,
- Richard
Agile Development Consultant, Practitioner, and Trainer
www.dynamisys.co.uk
 
New Post
4/6/2013 8:16 AM
 
Or maybe this http://www.dotnetnuke.com/Resources/W... is what you need as a better way to implement my choice 2!

Best wishes,
- Richard
Agile Development Consultant, Practitioner, and Trainer
www.dynamisys.co.uk
 
New Post
4/7/2013 4:03 AM
 
Maybe have a look at the razor tempates concept - it gives you very detailed control over where and how each menu element is injected.

http://www.dotnetnuke.com/Resources/W...

Westa
 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...Custom built ascx used as megamenu dropdown on JDMENUCustom built ascx used as megamenu dropdown on JDMENU


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out