RE: new menu control is very slow



Yes, I have noticed some other controls acting very slow, now that you
mention it. So I added a bunch more, and expanded the menu to test. The
outcome was horrendous!

What are we doing wrong on the client side?! We aren't modifing/adding to
the WebResource.axd file. I guess I always assumed it was the menu after
looking at the source from the page and seeing the bloated table renderings
for the menu.

Thanks again for your help, Steven!

Lucas

--

"Steven Cheng[MSFT]" wrote:

> Hi Lucas,
>
> Thanks for your response.
> I've just have a test on the page you provided, seems the menu's dynamic
> sub items are poped out quickly, so I'm still thinking this could be a
> clientside related issue. Can you find any other boxes that dosn't suffer
> the problem with the same page?
>
> Regards,
>
> Steven Cheng
> Microsoft Online Support
>
> Get Secure! www.microsoft.com/security
> (This posting is provided "AS IS", with no warranties, and confers no
> rights.)
>
>
>
>
> --------------------
> | Thread-Topic: new menu control is very slow
> | thread-index: AcYWIdg3FlORa1rrQ+qMXY81gaAPqw==
> | X-WBNR-Posting-Host: 192.209.53.250
> | From: =?Utf-8?B?bHVrZXJr?= <lukerk@xxxxxxxxxxxxxxxx>
> | References: <710278C6-84AD-4ABD-A180-70054E77104E@xxxxxxxxxxxxx>
> <ztq1xscFGHA.224@xxxxxxxxxxxxxxxxxxxxx>
> | Subject: RE: new menu control is very slow
> | Date: Tue, 10 Jan 2006 12:10:04 -0800
> | Lines: 228
> | Message-ID: <884C8F6A-070E-4E92-8409-D4D24E221955@xxxxxxxxxxxxx>
> | MIME-Version: 1.0
> | Content-Type: text/plain;
> | charset="Utf-8"
> | Content-Transfer-Encoding: 7bit
> | X-Newsreader: Microsoft CDO for Windows 2000
> | Content-Class: urn:content-classes:message
> | Importance: normal
> | Priority: normal
> | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
> | Newsgroups: microsoft.public.dotnet.framework.aspnet.webcontrols
> | NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.2.250
> | Path: TK2MSFTNGXA02.phx.gbl!TK2MSFTNGXA03.phx.gbl
> | Xref: TK2MSFTNGXA02.phx.gbl
> microsoft.public.dotnet.framework.aspnet.webcontrols:32376
> | X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet.webcontrols
> |
> | I have deployed the project we are working on to a server for our testers
> and
> | they have found the same problem. Other developers on the team are not
> | excempt from this, either.
> |
> | I can give you some coded stuff, if that's what you are looking for, that
> | closely emulates the troubles: (sorry if this gets too long!)
> | --------------------
> | Default.aspx:
> |
> | <form id="form1" runat="server">
> | <div>
> | <asp:Menu ID="siteMenu" runat="server" CssClass="MS"
> | DataSourceID="SiteMapDataSource1"
> | DisappearAfter="300" Orientation="Horizontal">
> | <StaticHoverStyle BackColor="#66957A"/>
> | <StaticMenuItemStyle BackColor="#4c83b2"/>
> | <DynamicHoverStyle BackColor="#66957A"/>
> | <DynamicMenuItemStyle BackColor="#4c83b2"/>
> | <DynamicMenuStyle BackColor="#4c83b2"/>
> | </asp:Menu>
> | <asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server"
> | ShowStartingNode="false" />
> | </div>
> | <br />
> | <div>
> | <asp:GridView ID="GridView1" runat="server" EnableViewState="False">
> | <HeaderStyle BackColor="Gray" ForeColor="White" />
> | </asp:GridView>
> | </div>
> | </form>
> |
> | --------------------
> | Default.aspx.cs:
> |
> | protected void Page_Load(object sender, EventArgs e)
> | {
> | //Some string of names.
> | string[] Names = ("Bob the Builder,Suzy Snoozy,Frank the Tank,Wendy just
> | Wendy,Steve Stevenson").Split(',');
> |
> | //A new dataset with columns.
> | DataSet newDataSet = new DataSet();
> | newDataSet.Tables.Add();
> | foreach (string name in Names)
> | newDataSet.Tables[0].Columns.Add(name);
> |
> | //Build a DataSet for the GridView.
> | //Add more rows by changing i's capacity (ie, 100, 1000, 10000) to see
> | incremental effects.
> | for (int i = 0; i < 10; i++)
> | {
> | DataRow newRow = newDataSet.Tables[0].NewRow();
> | foreach (string name in Names)
> | newRow[name] = name;
> | newDataSet.Tables[0].Rows.InsertAt(newRow, i);
> | }
> |
> | //Bind it.
> | GridView1.DataSource = newDataSet.Tables[0].DefaultView;
> | GridView1.DataBind();
> | }
> |
> | --------------------
> | siteMap:
> |
> | <siteMapNode>
> | <siteMapNode title="search">
> | <siteMapNode title="search1" url="Pages/Search1.aspx"/>
> | <siteMapNode title="search2" url="Pages/Search2.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="reports">
> | <siteMapNode title="downloads">
> | <siteMapNode title="download1" url="Pages/Download1.aspx"/>
> | <siteMapNode title="download2" url="Pages/Download2.aspx"/>
> | <siteMapNode title="download3" url="Pages/Download3.aspx"/>
> | <siteMapNode title="download4" url="Pages/Download4.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="report1" url="Pages/Report1.aspx"/>
> | <siteMapNode title="report2" url="Pages/Report2.aspx"/>
> | <siteMapNode title="report3" url="Pages/Report3.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="books">
> | <siteMapNode title="day">
> | <siteMapNode title="book1" url="Pages/Book1.aspx"/>
> | <siteMapNode title="book2" url="Pages/Book2.aspx"/>
> | <siteMapNode title="book3" url="Pages/Book3.aspx"/>
> | <siteMapNode title="book4" url="Pages/Book4.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="month">
> | <siteMapNode title="book11" url="Pages/Book11.aspx"/>
> | <siteMapNode title="book12" url="Pages/Book12.aspx"/>
> | <siteMapNode title="book13" url="Pages/Book13.aspx"/>
> | <siteMapNode title="book14" url="Pages/Book14.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="year">
> | <siteMapNode title="book21" url="Pages/Book21.aspx"/>
> | <siteMapNode title="book22" url="Pages/Book22.aspx"/>
> | <siteMapNode title="book23" url="Pages/Book23.aspx"/>
> | <siteMapNode title="book24" url="Pages/Book24.aspx"/>
> | </siteMapNode>
> | </siteMapNode>
> | <siteMapNode title="change">
> | <siteMapNode title="daily">
> | <siteMapNode title="change1" url="Pages/Change1.aspx"/>
> | <siteMapNode title="change2" url="Pages/Change2.aspx"/>
> | <siteMapNode title="change3" url="Pages/Change3.aspx"/>
> | <siteMapNode title="change4" url="Pages/Change4.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="monthly">
> | <siteMapNode title="change11" url="Pages/Change11.aspx"/>
> | <siteMapNode title="change12" url="Pages/Change12.aspx"/>
> | <siteMapNode title="change13" url="Pages/Change13.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="record">
> | <siteMapNode title="record1" url="Pages/Record1.aspx"/>
> | <siteMapNode title="record2" url="Pages/Record2.aspx"/>
> | <siteMapNode title="record3" url="Pages/Record3.aspx"/>
> | <siteMapNode title="record4" url="Pages/Record4.aspx"/>
> | </siteMapNode>
> | </siteMapNode>
> | <siteMapNode title="review">
> | <siteMapNode title="pending">
> | <siteMapNode title="review1" url="Pages/Review1.aspx"/>
> | <siteMapNode title="review2" url="Pages/Review2.aspx"/>
> | <siteMapNode title="review3" url="Pages/Review3.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="completed" url="Pages/Review4.aspx"/>
> | </siteMapNode>
> | <siteMapNode title="audit">
> | <siteMapNode title="pending" url="Pages/Audit1.aspx"/>
> | <siteMapNode title="completed" url="Pages/Audit2.aspx"/>
> | </siteMapNode>
> | </siteMapNode>
> |
> | So I just created a new website and used the default page/sitemap, etc.,
> | added links in the siteMap, and added some names to the GridView.
> Obviously
> | controls on the real page will be much more complex, but even on this
> page
> | you can see the delay by changing the number of records in the GridView
> in
> | the code-behind (changing i's capacity). Let me know if this works for
> you.
> |
> | Thanks for the welcome, Steven, and thanks for your help!
> | --
> | Lucas
> |
> |
> | "Steven Cheng[MSFT]" wrote:
> |
> | > Hi Lucas,
> | >
> | > Welcome to ASPNET newsgroup.
> | > Regarding on the Menu control displaying slow problem, I'm think
> whether
> | > this is a clientside specific issue since the dynamic menu popup using
> the
> | > standard output client scripts. So would you also tried testing the
> problem
> | > page on from some other clients to see whether all of them suffer this
> | > problem? If the problem occurs on all the client, I think you can try
> | > create a reproduce page which contains only the necessary items so that
> we
> | > can perform some tests on local side...
> | >
> | > Thanks,
> | >
> | > Steven Cheng
> | > Microsoft Online Support
> | >
> | > Get Secure! www.microsoft.com/security
> | > (This posting is provided "AS IS", with no warranties, and confers no
> | > rights.)
> | >
> | >
> | >
> | >
> | > --------------------
> | > | Thread-Topic: new menu control is very slow
> | > | thread-index: AcYVQpqmZFO2hHaLRI6mAVvnqXJ3AQ==
> | > | X-WBNR-Posting-Host: 192.209.53.250
> | > | From: =?Utf-8?B?bHVrZXJr?= <lukerk@xxxxxxxxxxxxxxxx>
> | > | Subject: new menu control is very slow
> | > | Date: Mon, 9 Jan 2006 09:32:03 -0800
> | > | Lines: 24
> | > | Message-ID: <710278C6-84AD-4ABD-A180-70054E77104E@xxxxxxxxxxxxx>
> | > | MIME-Version: 1.0
> | > | Content-Type: text/plain;
> | > | charset="Utf-8"
> | > | Content-Transfer-Encoding: 7bit
> | > | X-Newsreader: Microsoft CDO for Windows 2000
> | > | Content-Class: urn:content-classes:message
> | > | Importance: normal
> | > | Priority: normal
> | > | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
> | > | Newsgroups: microsoft.public.dotnet.framework.aspnet.webcontrols
> | > | NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.2.250
> | > | Path: TK2MSFTNGXA02.phx.gbl!TK2MSFTNGXA03.phx.gbl
> | > | Xref: TK2MSFTNGXA02.phx.gbl
> | > microsoft.public.dotnet.framework.aspnet.webcontrols:32343
> | > | X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet.webcontrols
> | > |
> | > | I was wondering if anyone else found that the new ASP.NET Menu
> control
> | > had
> | > | very slow responsivenes on complex pages.
> | > |
> | > | So I inserted this control in a WebControl, bound it to a
> | > siteMapDataSource,
> | > | and applied a little logic (for roles...but of course we have
> in-house
> | > | security, so I can't use RoleProvider...but that's another question
> for
> | > | later!), and finally apply a few styles with css. Then, just plopped
> the
> | > | .ascx in the Master page.
> | > |
> | > | I don't notice any performance woes when the page is simple, such as
> a
> | > | couple controls and some content. However, some of the reports we
> | > generate
> | > | are fairly large and we use GridViews to display them. This is when
> the
> | > menu
> | > | REALLY slows down. Hovering on a menu item for up to 10 seconds
> before
> | > the
> | > | dynamic menus drop down is common.
> | > |
> | > | I've turned of ViewSate, aborted using logic in the code-behind for
> | > 'roles',
> | > | and even tried removing the styles. Even implementing paging for the
> | > | GridViews so they aren't so large! Nothing seems to work.
> | > |
> | > | Can anyone help!?
> | > |
> | > | Thanks!
> | > | --
> | > | Lucas
> | > |
> | >
> | >
> |
>
>
.



Relevant Pages

  • RE: new menu control is very slow
    ... Could it be the client box lack of some certain resources, ... Steven Cheng ... Microsoft Online Support ... new menu control is very slow ...
    (microsoft.public.dotnet.framework.aspnet.webcontrols)
  • openssh 3.5p1: PATCH
    ... - sftp transaction logging ... control over whether the client can execute chmod, ...
    (comp.security.ssh)
  • Asp.net Important Topics.
    ... ASP.NET server controls contained within the page. ... A custom server control is ... can also perform validation using client script. ... Where does the Web page belong in the .NET Framework class hierarchy? ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: XPe PXE RDP minimum config?
    ... Certificate Request Client & Certificate Autoenrollment ... Common Control Libraries Version 5 ... Shell Core Registry Data ... It is Minlogon image with fully capable RDP client running. ...
    (microsoft.public.windowsxp.embedded)
  • Re: Multiple File Upload
    ... We need to separate the code and input file element in different Frame, ... Microsoft Online Support ... | use some rich client control ...
    (microsoft.public.dotnet.framework.aspnet.webcontrols)

Loading