Every attempt to edit a gridcell containing a dropdownbox shows the following errormessage:
cStyle is undefinedhttp://dev:8081/WebResource.axd?d=y5sNjaUn08fM5vmbZh5LFsUDYpllPOqC6PSRSKBTrKwcp4_8oRj0xkBSgbKNMmHaHk7e8VKMIu7sAOZ4X_y8L1zqLZa5schBTAQ3PohiS7SMDNFyKmHHNj7qO15Lfmb_u6MbdYtLc3FNDDKWL9HekVAOeYhD8wjS3wRNDEjJqoE1&t=633700440041007424Line 845
We too are getting this error? Did you have any look solving it?
Unfortunately, no.
The only hope at this time is a workaround. I did not know a version / release of WebGrid that does not contain such a Killerbug. So a rollback is not possible.
Hello,
So if it is a special condition and you are able to see it in your project, then can you please try to simulate it as closest to your project as possible? What else is on the page -- are there any other 3rd party controls, are there any AJAX enablers like UpdatePanel, WebAsyncRefreshPanel, etc?
Hi, no. No Panels.
We use build in ajax functionality of the WebGrid.
Here' s so far what i' ve tried to make a new project closest as possible.I believe it has something to do with the pager.
We load griddata via grd.invokeXmlHttpRequest(grd.eReqType.Refresh);
The original project is a little more complicated. So I guess i' ve to figure it out.
Hope this helps...
default.aspx.vb
Private Sub UltraWebGrid1_InitializeLayout1(ByVal sender As Object, ByVal e As Infragistics.WebUI.UltraWebGrid.LayoutEventArgs) Handles UltraWebGrid1.InitializeLayout With e.Layout e.Layout.Grid.DisplayLayout.AllowAddNewDefault = AllowAddNew.Yes .AddNewBox.Hidden = False .AddNewBox.Prompt = "new" .Pager.MinimumPagesForDisplay = 1 .Pager.AllowPaging = True .Pager.PageSize = 5 .RowsRange = .Pager.PageSize .Pager.ChangeLinksColor = False .Pager.StyleMode = PagerStyleMode.PrevNext '.ClientSideEvents.AfterCellUpdateHandler = "afterGridEdit" '.ClientSideEvents.AfterRowDeletedHandler = "afterGridRowDeleted" '.ClientSideEvents.BeforeRowInsertHandler = "BeforeGridRowInsertHandler" '.ClientSideEvents.EditKeyDownHandler = "EditKeyDownHandler" '.ClientSideEvents.KeyDownHandler = "KeyDownHandler" '.ClientSideEvents.DblClickHandler = "DblClickHandler" '.ClientSideEvents.AfterColumnSizeChangeHandler = "UltraWebGrid_AfterColumnSizeChangeHandler" '.ClientSideEvents.BeforeColumnSizeChangeHandler = "UltraWebGrid_BeforeColumnSizeChangeHandler" .HeaderStyleDefault.Font.Bold = False .AllowColSizingDefault = AllowSizing.Free .AllowSortingDefault = AllowSorting.OnClient .AllowColumnMovingDefault = AllowColumnMoving.None .GroupByBox.Hidden = True .GroupByBox.Location = BoxLocation.Top .GroupByBox.ShowBandLabels = ShowBandLabels.Default .ViewType = Infragistics.WebUI.UltraWebGrid.ViewType.OutlookGroupBy .StationaryMargins = StationaryMargins.Header .FilterOptionsDefault.AllowRowFiltering = RowFiltering.No .FilterOptionsDefault.ShowAllCondition = ShowFilterString.Yes .FilterOptionsDefault.ShowEmptyCondition = ShowFilterString.No .FilterOptionsDefault.ShowNonEmptyCondition = ShowFilterString.No ' AJAX Settings .Grid.Browser = Infragistics.WebUI.UltraWebGrid.BrowserLevel.Xml .LoadOnDemand = Infragistics.WebUI.UltraWebGrid.LoadOnDemand.Xml .ViewType = Infragistics.WebUI.UltraWebGrid.ViewType.Hierarchical .XmlLoadOnDemandType = XmlLoadOnDemandType.Accumulative End With 'GRID_InitializeBand(sender, Nothing) End Sub Private Sub UltraWebGrid1_InitializeDataSource(ByVal sender As Object, ByVal e As Infragistics.WebUI.UltraWebGrid.UltraGridEventArgs) Handles UltraWebGrid1.InitializeDataSource UltraWebGrid1.DisplayLayout.AutoGenerateColumns = False Dim _col As New UltraGridColumn("col1", "column1", ColumnType.DropDownList, 0) Dim _vl As New ValueList() _vl.ValueListItems.Add(0, "Testvalue") _col.ValueList = _vl UltraWebGrid1.Bands(0).Columns.Add(_col) Dim _ds As New System.Data.DataTable Dim _c As New System.Data.DataColumn("col1", GetType(Int16)) _ds.Columns.Add(_c) For i As Integer = 0 To 100 Dim _r As System.Data.DataRow = _ds.Rows.Add() Next UltraWebGrid1.DataSource = _ds UltraWebGrid1.DataBind() End Sub
default.aspx
<body> <form id="form1" runat="server"> <div> <igtbl:UltraWebGrid ID="UltraWebGrid1" runat="server" Height="345px" Width="100%" > <DisplayLayout allowcolsizingdefault="Free" allowcolumnmovingdefault="OnServer" allowdeletedefault="Yes" allowsortingdefault="OnClient" allowupdatedefault="Yes" bordercollapsedefault="Separate" headerclickactiondefault="SortMulti" rowheightdefault="20px" rowselectorsdefault="No" selecttyperowdefault="Extended" stationarymargins="Header" stationarymarginsoutlookgroupby="True" tablelayout="Fixed" version="4.00" viewtype="OutlookGroupBy"> <FrameStyle Height="345px" Width="100%" backcolor="Window" bordercolor="InactiveCaption" borderstyle="Solid" borderwidth="1px" font-names="Microsoft Sans Serif" font-size="8.25pt"> </FrameStyle> <pager minimumpagesfordisplay="2"> <PagerStyle BackColor="LightGray" BorderStyle="Solid" BorderWidth="1px"> <borderdetails colorleft="White" colortop="White" widthleft="1px" widthtop="1px" /> </PagerStyle> </pager> <editcellstyledefault borderstyle="None" borderwidth="0px"> </editcellstyledefault> <footerstyledefault backcolor="LightGray" borderstyle="Solid" borderwidth="1px"> <borderdetails colorleft="White" colortop="White" widthleft="1px" widthtop="1px" /> </footerstyledefault> <headerstyledefault backcolor="LightGray" borderstyle="Solid" horizontalalign="Left"> <borderdetails colorleft="White" colortop="White" widthleft="1px" widthtop="1px" /> </headerstyledefault> <rowstyledefault backcolor="Window" bordercolor="Silver" borderstyle="Solid" borderwidth="1px" font-names="Microsoft Sans Serif" font-size="8.25pt"> <padding left="3px" /> <borderdetails colorleft="Window" colortop="Window" /> </rowstyledefault> <groupbyrowstyledefault backcolor="Control" bordercolor="Window"> </groupbyrowstyledefault> <groupbybox> <boxstyle backcolor="ActiveBorder" bordercolor="Window"> </boxstyle> </groupbybox> <addnewbox hidden="False"> <boxstyle backcolor="Window" bordercolor="InactiveCaption" borderstyle="Solid" borderwidth="1px"> <borderdetails colorleft="White" colortop="White" widthleft="1px" widthtop="1px" /> </boxstyle> </addnewbox><ActivationObject BorderColor="" BorderWidth=""></ActivationObject> <filteroptionsdefault> <filterdropdownstyle backcolor="White" bordercolor="Silver" borderstyle="Solid" borderwidth="1px" customrules="overflow:auto;" font-names="Verdana,Arial,Helvetica,sans-serif" font-size="11px" height="300px" width="200px"> <padding left="2px" /> </filterdropdownstyle> <filterhighlightrowstyle backcolor="#151C55" forecolor="White"> </filterhighlightrowstyle> <filteroperanddropdownstyle backcolor="White" bordercolor="Silver" borderstyle="Solid" borderwidth="1px" customrules="overflow:auto;" font-names="Verdana,Arial,Helvetica,sans-serif" font-size="11px"> <padding left="2px" /> </filteroperanddropdownstyle> </filteroptionsdefault> </DisplayLayout> </igtbl:UltraWebGrid> </div> </form> <script> function test() { var grd = igtbl_getGridById('UltraWebGrid1'); grd.invokeXmlHttpRequest(grd.eReqType.Refresh); } </script> <a href="BLOCKED SCRIPTtest();" >test</a></body></html>
Thanks for the follow-up. While I will do my best at my side to continue working on this item and to reproduce the issue, I still believe the best / fastest and most reliable way to solve this is to contact Developer Support directly at:
http://es.infragistics.com/Support/#Overview
It is just the problems like that are typically hard to resolve over peer-to-peer forums.
Thanks.
Hi again,
I cannot reproduce so far, but the problem is in the Javascript function
function igtbl_editList(g,v,r,col,cElem) in Line 764;
In the working testproject the variable g.IsXHTML is true.In the not working Project it is false.
So if g.IsXHTML is false cStyle will never be initialised.
What is g.IsXHTML?
How to set this value to true?
Are there changes in behavior to previous versions?
svsde said:What is g.IsXHTML?
if(ig_csom.IsIE) { cStyle=cElem.currentStyle; } else { cStyle=igtbl_getComputedStyle(cElem); }
before the line:s.height=(cElem.offsetHeight - igtbl_parseInt(cStyle.borderTopWidth) - igtbl_parseInt(cStyle.borderBottomWidth)) + "px";(only this line was changed in this function in the hotfix 2039)
s.height=(cElem.offsetHeight - igtbl_parseInt(cStyle.borderTopWidth) - igtbl_parseInt(cStyle.borderBottomWidth)) + "px";
Please download and install v 8.3.20083.2059. This issue is fixed there.
Any other solution?
I have the same error in ultrawebgrids with columns of columntype "DropDownList" after upgrading to Version 8.3.20083.2039. It seems that on any upgrading i have new problems/bugs in my pages with infragistics controls :-((
Tobi_O said:What is g.IsXHTML? This checks if the document is a xhtml file.You can simply add the xhtml DOCTYPE declaration to avoid the error. [/quote] Thank you for your suggestion. Just adding the DOCTYPE to the master page (it was in one, but missing from another) solved the issue for us. <! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Thank you for your suggestion. Just adding the DOCTYPE to the master page (it was in one, but missing from another) solved the issue for us.
<!
mroyalty2002 said: Where would you add this code at?
Where would you add this code at?
Hi mroyalty2002,
so it seems the forum is today available.
I put the code into Page_InitComplete.
Hi svsde,
Where would you add this code at? Would it be in the pages load or prerender event? I added it to the prerender but that is causing an object reference error.
Thanks for the help.