iSeller Commerce
iSeller POS Retail
iSeller POS F&B
iSeller POS Express
Crosslight
WebUI
ClientUI
What's New
Download Trial
Web Solution
Mobile Solution
Enterprise Solution
Custom Development
Blog
Community
Latest Development Blogs
ForumPostTopic
Browse By Tag
We've noticed issues with WebGrid ever since we updated to the latest fixes/patches. We've finally narrowed it down to the following. When the grid loads using default settings it's fine. However, when we load user-saved structure it does not size vertically to the container. It was working fine prior to updating. Update Manager shows we're on version 7.0.7200.403.
See the attached images for the problem. Basically, the grid keeps going down vertically and the user cannot get to the rows and the status bar. I've masked out the grid's data due to confidentiality.
This is another major issue we need fixed soon please. Thank you.
Handy,
I was able to finally get a solution in place. I had to manipulate the different content into specific DIVs and PANELs to get it to work. If you want to try to duplicate it on your end, here's how our master pages are set up.
Main master layout:
<body> <form> <panel> <div> <content place holder> </content place holder> </div> </panel> </form> </body>
Grid master layout (that works) uses main master page as MP:
<content> <div> <div> <panel> <content place holder> </content place holder> </panel> </div> </div> </content>
And the page layout using the Grid master page as its MP:
<content> <WebMenuBar> </WebMenuBar> <WebGrid> </WebGrid> </content>
The Grid master page that did NOT work had the following layout:
<content> <div> <content place holder> </content place holder> </div> </content>
Note that each master page has its own JavaScript that we run on page load and when the user resizes the browser to dynamically resize the DIVs that hold the grid. This is an example of what would be on one of our master pages
<script type="text/javascript" language="javascript"> jsg_PrismUtility.AddClientEvent(window, 'load', resizeGrid); jsg_PrismUtility.AddClientEvent(window, 'resize', resizeGrid); function resizeGrid() { var oDivContent = document.getElementById('<%= Grid_DivContent.ClientID %>'); var oDivGrid = document.getElementById('<%= Grid_DivView.ClientID %>'); if (oDivGrid != null && oDivContent != null) { var oClientHeight = jsg_PrismUtility.WindowHeight(); var oClientWidth = jsg_PrismUtility.WindowWidth(); oDivContent.style.height = oClientHeight + 'px'; oDivGrid.style.width = oClientWidth + 'px'; oDivGrid.style.height = oClientHeight - 82 + 'px'; } try { wgDoResize(true, true); } catch (e) { } } </script>
Hello Yousif,
Please let me know if this workaround works on your or not. In your container resize event or window resize event, please try to apply the sample code below.
function window::onresize() { window.setTimeout(function(){wgDoResize(true,true);},100); }
Regards,Handy
Hi Handy,
Yes, we already use the wgDoResize(true,true) in our pages and I've tried it with the setTimeout and without and tried different values too, i.e., 100, 500, etc. and nothing is working. Like I mentioned above, it was working fine until we updated to the latest patches/fixes. At least it seems to be when all this started. Very strange.
Any other ideas on what could be causing this? Thanks.
Hi Yousif,
Thank you for your response. However, would you mind to send us your sample structure? I am trying to replicate your issue but could not see the issue as you described before.
I will try to get something together for you. I ran into an interesting situation where the grid is sizing just fine on one set of screens and then not working, per the above description, on another set of screens. I'm not sure what that would be and the developer for containers is out this week so it'll take me a bit longer to try to narrow the issue down.
At this point, I'm wondering if the problem is with the container on those screen exhibiting this behavior. But I'm wondering why it sizes fine with the default configuration and then once we save and read back the configuration and refresh the page, it would behave differently. I don't get it...yet.
If I am not mistaken, when you resize a container in the page, WebGrid has its own self resizing. It seems in your scenario, the it does not resize correctly. But we do need to replicate the issue to investigate the problem.
Yep. We use different master pages for different pages and they have their own resize code too. So I have to find what the difference is if any.
In the meanwhile, can you create your own sample where you save your grid configuration and then re-read it on page reload/refresh so your grid keeps your current layout, i.e., if you sort a column, move a column, resize a column, etc.?
You might be able to replicate before I get you anything.
Hello,
When refresh,sort, move or resize a column, WebGrid should not resize vertically. That's why I would need to see your structure for invetigating this issue.
I've already been clear about this not being a problem until the PAGE IS REFRESHED. FlyPostBacks are fine when the grid loads. This behavior doesn't show up until we save the structure during the post back of any changes like sorting, resizing, moving columns, etc. and then RELOADING THE PAGE is when the issues happens.
So you should be able to analyze this without our structure. Our structure is just the XML you guys provide any way from the grids save xml method which we then store in the database and load via your xml load method.
[EDIT] I'm looking a little deeper into this today to see what the difference is on those pages where it doesn't happen and those where it does. Hopefully I can provide enough info and we can duplicate.
Okay, I debugged into the page and for my browser size the height/width of the container are the same when the grid is loaded fresh and when the page is refereshed to load a user-saved layout. I use IE, so I used F12 to bring up the debugger. In the debugger, I resized the container and then manually ran wgDoResize(true,true) and it had no impact on the size of the grid.
or
Choose this if you're already a member of Intersoft Community Forum. You can link your OpenID account to your existing Intersoft Social ID.
Choose this if you don't have an Intersoft account yet. Your authenticated OpenID will be automatically linked to your new Intersoft account.
Enter your Wordpress Blogname