Hi!
Here's the scenario:
<asp:ScriptManager ID="manager" runat="server" /><asp:UpdatePanel ID="updPanel" runat="server"> <ContentTemplate> <asp:LinkButton ID="btnShow" runat="server" Text="Show Grid" OnClick="showGrid"></asp:LinkButton> <igtbl:UltraWebGrid ID="grid" runat="server" Visible=false >...</igtbl:UltraWebGrid> </ContentTemplate></asp:UpdatePanel><script runat="server"> void showGrid(object sender, EventArgs e) { grid.Visible = true; } </script>
So, here grid is not visible on first page rendering - and as I see, no ifragistics script include are added to the page html. When we click a button - ajax postback goes, grid becomes rendered, but still there's no script references, so grid is not functional - no row expanding or paging working and a lot of jscript messages about igtbl_...methods are not defined.
Is there a way to add all necessary webgrid jscript references manually for page, so we could call them on Page_OnLoad ?
( btw, we recently upgraded from v7.1 to 8.3, andin v.7. everythin was fine. Probably you moved adding script references into Render method or somewhere else, that is not called when grid is not visible, but adding script references do not obey updatePanel postbacks...)
I also found that you can also do this. This will render a very minimal grid to the client, but it also register the scripts.
<igtbl:UltraWebGrid ID="dummyGrid" runat="server">
</igtbl:UltraWebGrid>
This is what it actually renders to the client and it will be invisible on the client, and as stated it will register all of the grid scripts
<div style="overflow:hidden;position:relative;" class="ig_Control igtbl_Control ig_fd32ae29_r0">No Data To Display</div>
ok, actually we do this way, we have in web.config: <section name="infragistics.web" type="LogicBase.Ensemble.Core.InfragisticSharedConfigurator, LogicBase.Ensemble"/>.... <infragistics.web imageDirectory="http://host/infragistics/images" javaScriptDirectory="http://host/LogicbaseWebInclude/infragistics/scripts"/>Isn't it enough?