Solved

ASP.Net menu on an iPad

Posted on 2013-06-15
8
1,087 Views
Last Modified: 2013-10-06
Hi,
Somethings you can't make up!  I've developed a system using ASP.Net and VB.Net and it works fine on a PC or Apple Mac.  It also works ok on my iPad 4 with iOS 6.1.3.

But the sub-menus don't work on my client's Samsung tablet - when you hit a menu with a sub-menu, the sub-menu displays briefly then disappears.

So she bought 3 second-hand 1st generation iPads.  But these have iOS 5.1.1 and would you believe it but Safari and Chrome have the same problem when it comes to ASP.Net sub-menus on iOS 5.1.1, although apparently this problem wasn't present on iOS 4.

So I thought I'd see if it possible to do an upgrade to version 6, but the highest available version for iPad 1's is 5.1.1, and then I thought how about doing a factory reset back to the original iOS 3.2 or 4, but no, Apple don't allow that.

So now she's stuck with 3 old iPad's that can't go backwards or forwards, and which can't run my app.

Any ideas, please, either on how to solve the sub-menu problem or how to downgrade iOS?

Thanks,
Geoff
0
Comment
Question by:lybreeze
  • 5
  • 2
8 Comments
 
LVL 4

Expert Comment

by:MrC63
ID: 39250489
Can you provide a sample of what you're using to build the menus?  There are several different ways to achieve cross-browser compliance, but the best way to start is to see the method you're using.
0
 
LVL 83

Expert Comment

by:CodeCruiser
ID: 39250509
We have problems with submenus in ASPMenu where the menu will appear blank unless you move the mouse around on the popup so I think its not a very reliable control. Is change of control one of the options?
0
 

Author Comment

by:lybreeze
ID: 39250583
Thanks for your replies.

Here is the beginning of my ASP markup menu :

            <div class="clear hideSkiplink">
                <asp:Menu ID="NavigationMenu" runat="server" CssClass="menu"
                    StaticMenuStyle-CssClass="menu" StaticMenuStyle-HorizontalPadding="10px" StaticMenuItemStyle-HorizontalPadding="12px"
StaticMenuItemStyle-VerticalPadding="5px" DynamicHoverStyle-CssClass="menu" DynamicMenuStyle-CssClass="menu" DynamicSelectedStyle-CssClass="menu"
                    EnableViewState="false" Orientation="Horizontal" >
                     <Items>
                        <asp:MenuItem Text="Menu 1" Value="Menu 1"></asp:MenuItem>

                        <asp:MenuItem Text="Menu 2" Value="Menu 2">
 
                           <asp:MenuItem Text="Sub-Menu A" Value="Menu A">
                                <asp:MenuItem Text="Sub-sub-menu W" Value="W"></asp:MenuItem>
                                <asp:MenuItem Text="Sub-sub-menu X" Value="X"></asp:MenuItem>
 
                           <asp:MenuItem Text="Sub-Menu B" Value="Menu B">
                                <asp:MenuItem Text="Sub-sub-menu Y" Value="Y"></asp:MenuItem>
                                <asp:MenuItem Text="Sub-sub-menu Z" Value="Z"></asp:MenuItem>

The menus have been working well so far apart from this issue, but I will always consider an alternative if necessary.
0
Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

 
LVL 4

Assisted Solution

by:MrC63
MrC63 earned 100 total points
ID: 39250594
I would suggest you move to a pure, CSS driven menu such as the SuperFish menu.  It may require some re-coding of your menu output, however it will give you full cross-browser and mobile device compatibility.
0
 

Author Comment

by:lybreeze
ID: 39255920
Thank you for this suggestion.  I will look into using SuperFish and get back in a few days to report outcome.
0
 

Author Comment

by:lybreeze
ID: 39533817
Sorry that I have been a while getting back on this one.

You may have noticed in my code example above that some of the sub-menus have a Value parameter. In fact there are 44 of these, and obviously I don't want to have 44 almost identical sub-routines.

Do you know if Superfish menus can pass a parameter or a Session Variable to ASP.NET or VB.NET

Thanks
Geoff
0
 

Accepted Solution

by:
lybreeze earned 0 total points
ID: 39538212
I stumbled across the answer myself.  I was trying out an idea on an old iPad with iOS 5 when suddenly the menus started working properly, although I couldn't click through to any pages !  What had happened is that my router had gone down.  I realised that there must be some sort of PostBack going on in the menu code, and because it couldn't connect to the server the menus worked ok.

The answer is to add   Selectable="false"   to the MenuItem lines as per the example below :-

<Items>
           <asp:MenuItem Text="Menu 1" Value="Menu 1"></asp:MenuItem>
           <asp:MenuItem Text="Menu 2" Value="Menu 2" Selectable="false">
                    <asp:MenuItem Text="Sub-Menu A" Value="Menu A" Selectable="false">
                             <asp:MenuItem Text="Sub-sub-menu W" Value="W">/asp:MenuItem>
                             <asp:MenuItem Text="Sub-sub-menu X" Value="X"></asp:MenuItem>
 
                    <asp:MenuItem Text="Sub-Menu B" Value="Menu B" Selectable="false">
                             <asp:MenuItem Text="Sub-sub-menu Y" Value="Y"></asp:MenuItem>
                             <asp:MenuItem Text="Sub-sub-menu Z" Value="Z"></asp:MenuItem>

The sub-menus now work ok on Android devices and on iPads stuck on iOS 5.1.1, as well as on newer iPads and in all browsers.

Although SuperFish is no doubt a good menu solution, it seems to integrate with CSS and HTML, and I wanted to stick with ASP.NET menus because I need to retain the Value parameter as a way of indicating which of 44 choices the user has selected from nested menus.
0
 

Author Closing Comment

by:lybreeze
ID: 39550372
Although SuperFish is no doubt a good menu solution, it seems to integrate closely with CSS and HTML, and I wanted to stick with ASP.NET menus because I need to retain the Value parameter as a way of indicating which of 44 choices the user has selected from nested menus.

My answer is simple and necessitates minimal change to the code, and it may be helpful to others in the future.
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

What's a UDID? If you're involved in developing, testing, or even reviewing an iOS application that's in beta, then at some point you may need to know the UDID for any iOS devices that you'll be testing on. What's the UDID? It stands for Unique Dev…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

840 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question