Ok Its working now.. Just a small change in the above code...
Instead of using a UserControl.. I took the $create.. function and used it to create the child grid dynamically. I am creating a table element inside the div at runtime and then using the $create function to create the nested grid.
Thanks Sonu..
var ttable = document.createElement("table");
ttable.id = "nestTable" + Context.Key;
newDiv.appendChild(ttable);
var tt = $find(ttable.id);
tt = $create(AjaxDataControls.GridView, { "alternatingRowStyle": new AjaxDataControls.TableItemStyle('', '', '', '', 'RowStylewithGrid', new AjaxDataControls.FontInfo('', '', '', '', ''), '', '', '', '', '', true), "columns": [$create(AjaxDataControls.GridViewButtonColumn, { "allowDragAndDrop": false, "buttonType": AjaxDataControls.GridViewColumnButtonType.Button, "columnID": 2, "commandName": "text", "controlStyle": new AjaxDataControls.Style('', '', '', '', 'frmbuttonsmall', new AjaxDataControls.FontInfo('', '', '', '', ''), '', '', ''), "text": " T " }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 2, "dataField": "Operation", "headerText": "Operation" }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 3, "dataField": "WorkCenter", "headerText": "Work Center" }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 4, "dataField": "WC_Description", "headerText": "Description" }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 5, "dataField": "Op_stat", "headerText": "Status" }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 6, "dataField": "Task", "headerText": "Task" }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 7, "dataField": "Qty_to_Make", "headerText": "Qty to Make" }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 8, "dataField": "Remaining_Time", "headerText": "Remaining Time" }, null, null), $create(AjaxDataControls.GridViewBoundColumn, { "allowDragAndDrop": true, "columnID": 5, "dataField": "Next_Opr", "headerText": "Next Opreration" }, null, null)], "emptyDataTemplate": "No Order Lines Found for this Work Order.", "headerStyle": new AjaxDataControls.TableItemStyle('', '', '', '', 'HeaderStyle', new AjaxDataControls.FontInfo('', '', '', '', ''), '', '', '', '', '', true), "rowStyle": new AjaxDataControls.TableItemStyle('', '', '', '', 'RowStylewithGrid', new AjaxDataControls.FontInfo('', '', '', '', ''), '', '', '', '', '', true) }, { "rowCommand": getOperations_RowCommand, "rowDataBound": getOperations_DataBound }, null,ttable);
tt.set_dataSource(result.Table.rows);
tt.dataBind();