This is a migrated thread and some comments may be shown as answers.

RadGrid with RadMenu embedded in headers issue

11 Answers 172 Views
Grid
This is a migrated thread and some comments may be shown as answers.
PureCode
Top achievements
Rank 2
PureCode asked on 21 Sep 2008, 01:18 AM
Hi,

I have a RadGrid on a page where I have customized the column headers to embed a RadMenu for sorting and filtering.

The problem I run into is that when the filter sub-menu expands (to the right, property is set to 'auto') at the right-most columns, it gets clipped at the edge of the RadGrid.

The issue:

Click for image.

The 'root' menu item (eg, the one containing the sort options and filter parent menu items) is offset in the X by -99, which should not make any difference.

I have literally tried everything to get the sub-menu to change direction to the right when it gets clipped at the grid edge. I have also tried just about everything with z-indexing (down to a copy of the skin file for the menu where each css class had a z-index applied!).

Nothing has worked so far. I would like to detect that the sub-menu is being clipped at the right-most edge and change the expand direction to left in those cases.

Any ideas?

Regards,

Mike.



11 Answers, 1 is accepted

Sort by
0
Dimo
Telerik team
answered on 22 Sep 2008, 12:22 PM
Hello Mike,

Are you by any chance using RadGrid scrolling without static headers, or have you set overflow:hidden to the control or its parent (for example if RadGrid is inside a RadSplitter pane with disabled scrolling)?

If the answer to any of the above questions is "yes", then you should use RadContextMenu instead of RadMenu.

Kind regards,
Dimo
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
PureCode
Top achievements
Rank 2
answered on 22 Sep 2008, 06:37 PM
Hi,

I am not using any scrolling in the RadGrid (neither vertical or horizontal) nor have I purposefully set the overflow to hidden for any control in that particular page (content page, as it is inside a master page).

I do use a customized Outlook skin for the RadMenu in the header cells of the RadGrid, but all that I removed there is some padding and background images in order to offset the custom images correctly for the root menu item (the arrow in the header).

I also just noticed that using the RadGrid with the RadMenu in the header cells COMPLETELY fails within IE7 (I have been testing with FireFox). The drop down (eg, no menu shows up, the button in the header does, and is 'clickable', mouse hover image does not work) doesn't work at all. Strange detail there is that the RadMenu in the master page starts having the exact same issue. Root menu items work (the 'Home' item in the RadMenu in the master page works, it has no drop down). Once I navigate away (to 'Home'), the RadMenu in the master page once again works.

Seems I am having some more issues going on than I figured. Back to the drawing board.

Anyways, in summary, the answers to both your questions is 'no' as far as I am aware.

Regards,

Mike
0
PureCode
Top achievements
Rank 2
answered on 22 Sep 2008, 06:40 PM
Hi again.

Eh, the problem with IE7 described above regarding RadMenu goes a little further than that. Even a content page with a normal RadGrid (eg, no custom code at all for it.) showing and the RadMenu drop down functionality in the master page stops working. It works perfectly under FireFox.

Regards,

Mike
0
PureCode
Top achievements
Rank 2
answered on 22 Sep 2008, 07:32 PM
Ok,

It turns out that the problem is that in the two pages that contain grids, IE7 does not have the IFRAMEs in the page (for the master page RadMenu), it does have them in the default (home) page.

I am lost on this one I am afraid. I do know that my custom code has nothing to do with it (removed all of it to test).

Also, RadToolTip on those pages with the missing IFRAMEs doesn't work anymore either. Which, again, work fine in FireFox.

DebugBar states that IE7 is running in standard IE6 mode.

Regards,

Mike.
0
Dimo
Telerik team
answered on 25 Sep 2008, 07:50 PM
Hello Mike,

Can you please open a support ticket and send us a runnable example, so that we examine the issues locally? Thank you in advance.

Kind regards,
Dimo
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
PureCode
Top achievements
Rank 2
answered on 25 Sep 2008, 08:46 PM
Hey Dimo,

I'd love to give you a support ticket, but even when I re-download the ASP.NET AJAX control suite trial, it refuses to give me access.

However, the issue with the 'missing IFRAMEs' is pretty simple. It is the RadFormDecorator with the DecoratedControls bit containing 'TextBox'. All the other entries in there work, but 'TextBox' (combined with a DatePicker filter in a column as far as I can tell) bombs out.

The error occurs in the "RadFormDecorator.js". To be more specific, in the following bit of code (formatted for readability):

var _54=_51[i].firstChild.style; 
 
if(_46) 
    _54.marginTop=_46+"px"; 
 
_54.backgroundColor=_4e
 
_54.backgroundImage=_49
 
_54.borderTop=_54.borderBottom="solid 1px "+_4d; 
 
_54.height=_4c+"px"; 
 
if(1!=_4f) 
    _54.opacity=_4f
}

The error occurs on line 14 in the above snippet from "RadFormDecorator.js".

The error message is as follows: "Invalid Argument".

This is because the variable "_4c" contains "-3" as its value.

As a result, my entire page more or less stops working. This is specific to IE7 as FireFox seems to ignore the error (or deals with it better) and goes merrily on to continue with a working page.

Again, this is caused by the RadFormDecorator having "TextBox" set in the DecoratedControls property, any other entries in that property do not give this issue. It seems related to a DatePicker in a column filter of RadGrid, but I may be wrong there, I have a LOT of grids and filters.

Also, I have the RadFormDecorator on the master page, while the grids are on content pages. There is also a RadStyleSheetManager on the master page, but removing this does not make any difference.

Not sure if it may influence this issue, but the skin used across the entire application is "Outlook".

Regards,

Mike


0
PureCode
Top achievements
Rank 2
answered on 25 Sep 2008, 09:02 PM
Hi again,

I should note that under IE7, with the 'TextBox' deselected in the RadFormDecorator, the original issue of the menu being clipped on the side of the RadGrid is not an issue, it overlays just fine.

So, that particular issue is not caused by the RadFormDecorator problem, and seems to be FireFox related.

Regards,

Mike
0
PureCode
Top achievements
Rank 2
answered on 25 Sep 2008, 10:08 PM
Hi once more,

I found another instance of the RadFormDecorator blowing up under IE7.

In this case it concerns a grid with no date picker but a TextBox inside a template column that can be scrolled. Error is the same as above and at the same location within the javascript file, value is the same as well, '-3'.

Deselecting 'TextArea' within the RadFormDecorator solves that problem.

So, TextBox and/or TextArea in RadFormDecorator selected and one of the two used in some way or another within a RadGrid will bomb out on the 'RadFormDecorator.js'.

Regards,

Mike
0
Dimo
Telerik team
answered on 29 Sep 2008, 12:57 PM
Hi Mike,

The issue with RadFormDecorator and RadInput / RadDateTimePicker controls throwing Javascript errors has been fixed and changes will take effect in our coming release - Q2 2008 Service Pack 2.

I cannot reproduce the issue with the RadGrid FilterMenu, or any issue related to missing IFRAME on a page with RadFormDecorator. I have notified my colleagues in charge about your problem with submitting support tickets, so this should be addressed shortly. I would ask you to submit a working example in a new support ticket after you are able to do so.

All the best,
Dimo
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
Dimo
Telerik team
answered on 30 Sep 2008, 07:15 AM
Mike,

Your trial support periods for RadControls for ASP.NET AJAX and Winforms have expired. Please contact sales@telerik.com if you want to renew them.

Regards,
Dimo
the Telerik team

Check out Telerik Trainer, the state of the art learning tool for Telerik products.
0
PureCode
Top achievements
Rank 2
answered on 30 Sep 2008, 08:47 PM
Hey Dimo,

Glad to hear the javascript errors have been fixed.

We figured that the trial had simply expired on the ASP.NET AJAX suite and we didn't renew the subscription to the WinForms suite simply because we are moving entirely to browser based applications.

As I am currently out of state at a customer, I have little to no time to do any example code with my issues (even though my laptop delivers the same results as my development machine.) so I will do that as soon as I can.

We are developing one of our applications in three different versions, between which only the used control suite differs. See it as our way to test several suites at the same time in order to decide which we will use exclusively from there on. Telerik is obviously one of those three, and as such I am not surprised that the trial time expired, the application may be the 'smallest' of our current jobs, but it is still a major project.

Regards,

Mike
Tags
Grid
Asked by
PureCode
Top achievements
Rank 2
Answers by
Dimo
Telerik team
PureCode
Top achievements
Rank 2
Share this question
or