Friday, October 26, 2007

ASP.NET 2.0 Menu Control Problem

ASP.NET 2.0 is bundelled with lots of new features. In older days we use to write lot of user controls now most common ones are coming as built in. Few of them are

  • Master Pages
  • Menu Controls
  • Themes and Skins
  • Login Controls
  • Data Source Controls
  • Sitemap
This has made life of web programmer very easy. But while using them we need to be know about them throughly in order to get best out of it.

We have used all of them listed above. And we have faced minor side effects of them as well.

Here I am gogin to discuss on the Menu Control used in IE (as most of our users are using IE)
Below mentioned problems I have faced in IE 6.0

We have created an ASP.NET 2.0 web application. We have a few drop-down menus on this page. After clicking on the menu item which does a transaction that takes time, if we hover the mouse on other menu, the I.E browser’s progress bar completes immediately. However the transaction is happening in the background and will complete after a few minutes. But the user is in a state of confusion what is happening.For example you clicked on a menu and page is getting loaded then progress bar shows as below

  • But mean time if you move mouse over any menu the progress bar shows as below which indicates that thread aborted or completed. And this happens the moment you take mouse over to any menu it immediately fills the progress bar.

  • But reality is it just fills the progress bar and loding happes as expected. Here there is no problem with the functionality but with the usability.
  • The code responsible for the problem is emitted java script code present in the webresource.axd. Unfortunately we cannot change it. The PopOut_Show is the function causing the issue and it is a part of the call chain that is triggered by the onmouseover event.
    function PopOut_Show(panelId, hideScrollers, data) {
    //Code
    if (parent.tagName.toLowerCase() == "html") {
    document.body.appendChild(childFrame);
    }
    else {
    parent.appendChild(childFrame);
    }
    //Code
    }

In case if anybody has resolved this problem please let me know bharat.mane@gmail.com.

Bharat Mane

1 comment:

Bharat Mane said...

There is another constraint on the menu control is every menu item shall have unique URL whereas in some cases we have to show two different menus with the same URL.