Link to home
Start Free TrialLog in
Avatar of allanmark
allanmark

asked on

XHTML 1.0 versus HTML 4.0

Greetings all

I have been downloading and evaluating various grids. I finally settled on one that does it for me
(http://www.codeproject.com/KB/webforms/ScrollingGrid.aspx)

However, when I make use of it on my page, everything is condensed. After some scrutiny (and muttered words not found in any known dictionary!), I found the difference XHTML 1.0 vs HTML 4.0

My Page source is:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

The demo page is:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >

Is ther any way around this?  The grid is exactly what I need and I'd hate to have to attempt something from scratch!

In advance, thanks!!

     allanmark


Err-Grid.jpg
Ok-Grid.jpg
Avatar of Adam
Adam
Flag of United Kingdom of Great Britain and Northern Ireland image

Does the grid not allow you to set the font properties?

If you have already tried this, could you create a small grid (one column, one row) with nothing else on the page, then upload all the generated HTML to this question, so we can see what is happening?


Allan,

just use CSS to modify the font-size. Try it by putting the content of the code snippet into the <head> of the document.


<style>
body { font-size: 8px; }
</style>

Open in new window

Try raising the font-size if it is too small.
Avatar of allanmark
allanmark

ASKER

Tried "body { font-size: 8px; ..."  -  same result.

Set font-size in grid ("Font-Size="Medium">") - made the grid font larger. I also set the font in the containing control. It appearred not to do anything, but when I hit F5 to refresh, you geta brief flah of the hedaders at the larger size. DOn't know what's happening there!!

Snippet contains Page Source And Code Behind for Grid with one column and only one record.
PAGE SOURCE:
 
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
 
<%@ Register TagPrefix=avg Assembly=ScrollingGrid Namespace=AvgControls %>
<%@ Register TagPrefix=avg TagName=DemoControl Src="~/WebUserControl2.ascx" %>
 
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html>
<head>
<title>ScrollingGrid Demo VII</title>
<style>
body { font-family:verdana; font-size: 8px; }
tr { font-size:0.7em; }
div.links { font-family:verdana; font-size:1.2em; color:white; }
a { color:white; }
</style>
<script>
	function sg1_updateHeight()
	{
		scaleHeightToBrowser('sg1', 175, 80);
	}
 
	if (window.attachEvent)
		window.attachEvent("onresize", sg1_updateHeight);
	else if (window.addEventListener)
		window.addEventListener("resize", sg1_updateHeight, false);
</script>
</head>
<body bgcolor=#888888>
 
<div class=links>
	Demo 1 &nbsp;&nbsp; </div>
 
<hr size=1 color=black>
 
 
<form id="Form1" runat="server">
 
 
	
 
		Variable width & height ScrollingGrid within a table. Control is set to update the last scroll position on postback.<br>
		<br>
 
		<avg:ScrollingGrid ID=sdd runat=server Width=100% Height=190 HeaderWidthReduction=17>
 
			<asp:DataGrid runat=server ID=Grid2
				AutoGenerateColumns=True AllowSorting=True AllowPaging=True PageSize=35
				OnPageIndexChanged=Grid2_PageIndexChanged OnSortCommand=Grid2_Sort>
 
				<HeaderStyle BackColor=red ForeColor=white Font-Bold=True />
				<ItemStyle BackColor=#fefefe />
				<AlternatingItemStyle BackColor=#eeeeee />
				<PagerStyle BackColor=silver ForeColor=White Mode=NumericPages />
			</asp:DataGrid>
 
		</avg:ScrollingGrid>
 
 
		<script language=javascript>
		<!--
		setTimeout("sg1_updateHeight()", 100)
		//--></script>
 
</form>
 
 
CODE BEHIND:
 
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration;
 
 
public partial class Default2 : System.Web.UI.Page
{
    string sortCol = "OrderID";
 
 
    override protected void OnInit(EventArgs e)
    {
        this.Load += new System.EventHandler(this.Page_Load);
        base.OnInit(e);
    }
 
 
    protected void Page_Load(object sender, System.EventArgs e)
    {
        if (!IsPostBack)
        {
            PopulateData();
        }
 
        sdd.SetStartScrollPosFromPostack();
    }
 
 
    void PopulateData()
    {
        OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0; Data Source=" + Server.MapPath("data.mdb"));
        conn.Open();
 
        OleDbDataAdapter adap = new OleDbDataAdapter("SELECT CustomerId FROM Orders Where OrderId = 10248 ORDER BY " + this.sortCol, conn);
        DataTable tbl = new DataTable();
        adap.Fill(tbl);
 
        Grid2.DataSource = tbl;
 
        Grid2.DataBind();
 
        conn.Close();
    }
 
 
    protected void Grid2_PageIndexChanged(object sender, DataGridPageChangedEventArgs e)
    {
        Grid2.CurrentPageIndex = e.NewPageIndex;
        PopulateData();
    }
 
 
    protected void Grid2_Sort(object sender, DataGridSortCommandEventArgs e)
    {
        this.sortCol = e.SortExpression;
        PopulateData();
    }
 
 
}

Open in new window

As I don't have the scrolling grid to test with, could you please upload the GENERATED Html (view source in your web browser).

Also, what browser are you using? IE, Firefox? Have you tested in different browsers?

Try this

Replace
<avg:ScrollingGrid ID=sdd runat=server Width=100% Height=190 HeaderWidthReduction=17>
with
<avg:ScrollingGrid ID=sdd runat=server Width=100% Height=190 HeaderWidthReduction=17 CssClass=tableview>

Then add this to the <head> of the document:
<style>
.tableview { font-size: 14px; }
</style>
Be sure to remove all font-size changes you made before
iserko - if the ScrollingGrid is working correctly, surely you shouldn't have to fudge it like this?
1. Removed previous font changes
2. Applied "tableview class".

Back to the first result -- everything condensed.


<head>
<title>ScrollingGrid Demo VX</title>
<style>
tableview { font-size: 14px; }
body { font-family:verdana; font-size: 8px; }
tr { font-size:0.7em; }
div.links { font-family:verdana; font-size:1.2em; color:white; }
a { color:white; }
</style>
...........
 
<avg:ScrollingGrid ID=sdd runat=server Width=100% Height=190 HeaderWidthReduction=17 CssClass="tableview">
...........
...............

Open in new window

Remove the font-size setting in body

change
body { font-family:verdana; font-size: 8px; }
to
body { font-family:verdana; }

SOLUTION
Avatar of iserko
iserko
Flag of Slovenia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Did so. Slightly larger. See attached jpg.

I got to wondering if this coudln't be one of those Firefox (which, BTW,  I'm using) / IExplorer issues. So, I ran it in IE, but got an error on this line "document.getElementById(sgID + "$divContent").style.height = newHeight;", in the JScript file (ScrollingGrid.js -  see snippet).
/*
 * Copyright © 2005, Ashley van Gerven (ashley.v__g__@g__mail.com - remove '_')
 * All rights reserved.
 *
 * Use of this script, with or without modification, is permitted
 * provided that the above copyright notice and disclaimer below is not removed.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
 * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
 * OF SUCH DAMAGE.
 */
 
 
var updateSGDivWidthsExplorerTimer = null
 
 
function initScrollingGrid(scrollingGridID, gridID, lastRowIsPager, startScrollLeft, startScrollTop)
{
	if (navigator.userAgent.toLowerCase().indexOf("opera") != -1) // opera not supported
		return;
 
	if (!document.getElementById) // old browsers not supported
		return;
 
	var tblHdr = document.getElementById(scrollingGridID + "$tblHdr");
	var tblDataGrid = document.getElementById(gridID);
	var tblPager = document.getElementById(scrollingGridID + "$tblPager");
 
	// get header table's first row
	var tbodyEl = tblHdr.childNodes[firstChildElIndex(tblHdr, "TBODY")];
	var trEl = tbodyEl.childNodes[firstChildElIndex(tbodyEl, "TR")];
 
	// get datagrid table's first row
	var tbodyEl2 = tblDataGrid.childNodes[firstChildElIndex(tblDataGrid, "TBODY")];
	var trEl2 = tbodyEl2.childNodes[firstChildElIndex(tbodyEl2, "TR")];
 
	// delete empty TR on placeholder table
	tbodyEl.removeChild(trEl);
 
	// move the header row from datagrid table to our placeholder table
	tbodyEl.appendChild(trEl2);
 
	if (lastRowIsPager)  // if grid pager is last row then move it below the scrolling DIV (i.e. freeze it)
	{
		// get pager table's first row
		var tbodyEl3 = tblPager.childNodes[firstChildElIndex(tblPager, "TBODY")];
		var trEl3 = tbodyEl3.childNodes[firstChildElIndex(tbodyEl3, "TR")];
 
		// get datagrid table's last row
		var trEl4 = tbodyEl2.childNodes[lastChildElIndex(tbodyEl2, "TR")];
 
		// delete empty TR on placeholder table
		tbodyEl3.removeChild(trEl3);
 
		// move the footer from datagrid table to our seperate table
		tbodyEl3.appendChild(trEl4);
 
		// set table width to match content DIV
		tblPager.width = document.getElementById(scrollingGridID + "$divContent").offsetWidth;
	}
 
 
	setColumnWidths(scrollingGridID, gridID);
 
 
	if (window.attachEvent)  // IE only - resize DIVs now + on resize
	{
		updateSGDivWidthsExplorer();
		window.attachEvent("onresize", scheduleUpdateSGDivWidthsExplorer);
	}
}
 
 
// match up column widths
function setColumnWidths(scrollingGridID, gridID)
{
	// reset scroll positions since FF remembers them on page-refresh
	document.getElementById(scrollingGridID + "$divHdr").scrollLeft = 0;
	document.getElementById(scrollingGridID + "$divContent").scrollLeft = 0;
	document.getElementById(scrollingGridID + "$divContent").scrollTop = 0;
 
	// for FF: ensure enough space to expand columns
	document.getElementById(scrollingGridID + "$headerCntr").style.width = 10000;
	document.getElementById(scrollingGridID + "$contentCntr").style.width = 10000;
 
	var widths = new Array();
	var totalWidth = 0;
 
	var tblHdr = document.getElementById(scrollingGridID + "$tblHdr");
	var tblGrid = document.getElementById(gridID);
 
	// get header row
	var tbodyEl = tblHdr.childNodes[firstChildElIndex(tblHdr, "TBODY")];
	var trEl = tbodyEl.childNodes[firstChildElIndex(tbodyEl, "TR")];
 
	// get first content row
	var tbodyEl2 = tblGrid.childNodes[firstChildElIndex(tblGrid, "TBODY")];
	var trIndex = firstChildElIndex(tbodyEl2, "TR");
	if (trIndex == -1) // i.e. no content rows
	{
		document.getElementById(scrollingGridID + "$contentCntr").style.width = 1;
		return;
	}
	var trEl2 = tbodyEl2.childNodes[trIndex];
 
 
	for (var i=0; i<trEl.childNodes.length; i++)
	{
		if (trEl.childNodes[i].nodeName != "TD") // skip #text nodes
			continue;
 
		// TD element for the header row
		var tdHdr = trEl.childNodes[i];
 
		// TD element for the content row
		var tdContent = trEl2.childNodes[i];
 
		// get width of of the header or content cell (depends which is widest)
		if (tdHdr.offsetWidth > tdContent.offsetWidth)
			widths[i] = tdHdr.offsetWidth;
		else
			widths[i] = tdContent.offsetWidth;
 
		totalWidth += widths[i];
	}
 
 
	if (document.all) // IE: set table-layout style
	{
		tblGrid.style.tableLayout = "fixed";
		tblHdr.style.tableLayout = "fixed";
	}
 
 
	for (var i=0; i<widths.length; i++)
	{
		if (widths[i]+"" == "undefined")
			continue;
 
		// TD element for the header row
		var tdHdr = trEl.childNodes[i];
 
		// TD element for the content row
		var tdContent = trEl2.childNodes[i];
 
		var widthAdjustment = 0;
		if (!document.all)
		{
			widthAdjustment = -2 * parseInt(tblGrid.getAttribute("cellpadding")); // FF: subtract cellpadding
		}
 
		// Update either the header cell or content cell (not both, otherwise FF stuffs up)
		if (tdHdr.offsetWidth != widths[i])
			tdHdr.style.width = widths[i] + widthAdjustment; // update header column width
		if (tdContent.offsetWidth != widths[i])
			tdContent.style.width = widths[i] + widthAdjustment; // update content column width
	}
 
	// update the content container table width from 10000 to correct width
	document.getElementById(scrollingGridID + "$contentCntr").style.width = tblGrid.offsetWidth;
}
 
 
// IE resize event handler
function scheduleUpdateSGDivWidthsExplorer()
{
	clearTimeout(updateSGDivWidthsExplorerTimer);
	updateSGDivWidthsExplorerTimer = setTimeout("updateSGDivWidthsExplorer()", 20);
}
 
 
// IE only - update widths for all ScrollingGrids according to their container table (since content of table is clipped)
function updateSGDivWidthsExplorer()
{
	var arr = document.getElementsByTagName("TABLE");
	for (i=0; i<arr.length; i++)
	{
		if (arr[i].getAttribute("NAME") == "ScrollingGrid")
		{
			var scrollingGridID = arr[i].id;
 
			var headerReduction = 0;
			if (document.getElementById(scrollingGridID + "$divHdr").style.marginRight != "")
				headerReduction = parseInt(document.getElementById(scrollingGridID + "$divHdr").style.marginRight);
 
			var footerReduction = 0;
			if (document.getElementById(scrollingGridID + "$tblPager") != null && document.getElementById(scrollingGridID + "$tblPager").style.marginRight != "")
				footerReduction = parseInt(document.getElementById(scrollingGridID + "$tblPager").style.marginRight);
 
			try
			{
				document.getElementById(scrollingGridID + "$divHdr").style.width = document.getElementById(scrollingGridID).clientWidth - headerReduction;
				document.getElementById(scrollingGridID + "$divContent").style.width = document.getElementById(scrollingGridID).clientWidth;
				document.getElementById(scrollingGridID + "$tblPager").style.width = document.getElementById(scrollingGridID).clientWidth - footerReduction;
			}
			catch (err)
			{}
 
			updateScroll(document.getElementById(scrollingGridID + "$divContent"), scrollingGridID);
		}
	}
}
 
 
// find the index of first child element (e.g. TBODY) - handy for FF which creates #text nodes from whitespace
function firstChildElIndex(el, searchFor)
{
	for (var i=0; i<el.childNodes.length; i++)
	{
		if (el.childNodes[i].nodeName == searchFor)
			return i;
	}
	return -1;
}
 
 
// find the index of last child element
function lastChildElIndex(el, searchFor)
{
	for (var i=el.childNodes.length-1; i>=0; i--)
	{
		if (el.childNodes[i].nodeName == searchFor)
			return i;
	}
	return -1;
}
 
 
// content scroll event handler (matches the header row with the horizontal scroll position of content)
function updateScroll(divObj, scrollingGridID)
{
	if (document.getElementById(scrollingGridID + "$divHdr") != null)
		document.getElementById(scrollingGridID + "$divHdr").scrollLeft = divObj.scrollLeft;
 
	// save scroll position to hidden input
	document.getElementById(scrollingGridID + "$hdnScrollPos").value = divObj.scrollLeft + "-" + divObj.scrollTop;
}
 
 
function setContentScrollPos(sgID, left, top)
{
	var divContent = document.getElementById(sgID + "$divContent");
	divContent.scrollLeft = left;
	divContent.scrollTop = top;
}
 
 
 
 
// ************************************
// *        Utility functions         *
// ************************************
 
// scale the content DIV height with the browser window height minus specified height [reduceBy]
function scaleHeightToBrowser(sgID, reduceBy, minHeight)
{
	var newHeight = document.body.clientHeight - reduceBy;
	if (newHeight < minHeight)
		newHeight = minHeight;
 
	document.getElementById(sgID + "$divContent").style.height = newHeight;
}
 
 
// scroll the content by cellspacing height to get rid of double border
function adjustScrollTop(scrollingGridID, gridID)
{
	document.getElementById(scrollingGridID + "$divContent").scrollTop = parseInt(document.getElementById(gridID).getAttribute("cellspacing"));
}
 
 
// reduce the height of the header div by cellspacing height to get rid of double border (alternate method to adjustScrollTop)
function cropHeader(scrollingGridID, gridID)
{
	document.getElementById(scrollingGridID + "$divHdr").style.height = document.getElementById(scrollingGridID + "$divHdr").offsetHeight - parseInt(document.getElementById(gridID).getAttribute("cellspacing"));
}

Open in new window

Latest-Grid.jpg
Ooops ... the error message for that JScript = "Microsoft JScript runtime error: Object required"
@Cyber-Spy ... I didn't suggest fudging the script ... I suggested used the proper procedure (stated on the programmer's page) to apply a certain CSS style for the table

@Allan ... the javascript should be working. Its working on the programmer's demo page in IE7 as well as Firefox.
Oh and btw ... you missed something in the <style> element ... there should be a <dot> in front of tableview (see code snippet)
<head>
<title>ScrollingGrid Demo VX</title>
<style>
.tableview { font-size: 14px; }
body { font-family:verdana; font-size: 8px; }
tr { font-size:0.7em; }
div.links { font-family:verdana; font-size:1.2em; color:white; }
a { color:white; }
</style>
...........
 
<avg:ScrollingGrid ID=sdd runat=server Width=100% Height=190 HeaderWidthReduction=17 CssClass="tableview">
...........
...............

Open in new window

Ooops! Ok, corrected the .tableview. Sizng is now improved (see atatched, laest02.jpg). If you look at this, you ill see that while the sizing is larger, the column spacing varies.

Back to the DOC header ... the demo header contained ...HTML 4.0 ... and was created with VS2003. I'm using VS2005 whichc creates the DOC header with XHTML 1.0.  Any chance taht this is a compatability issue?

SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Avatar of David S.
David S.
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
@Iserko,

Although creating a CSS class is indeed the correct way of applying a style to a table, if this ScrollingGrid has been well designed and implemented, all the styles applicable to it should be available as properties of the object, and there should be no need to resort to creating your own classes, which the control may override (a style attribute in the table tag would take precedence over the page level class)

@allanmark
From what I've read above, it would seem there is something wrong with the HTML output by the control (i.e. not to XHTML standards). If you could just do a view source in the web browser, and post the rendered HTML here, I can play with it a browser and see what can be changed to fix the output.
Many thanks for all your efforts.

Please see attached source.



 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html>
<head>
<title>ScrollingGrid Demo Original</title>
<style>
body { font-family:verdana; font-size:0.7em; }
tr { font-size:0.7em; }
div.links { font-family:verdana; font-size:1.2em; color:white; }
a { color:white; }
</style>
<script>
	function sg1_updateHeight()
	{
		scaleHeightToBrowser('sg1', 175, 80);
	}
 
	if (window.attachEvent)
		window.attachEvent("onresize", sg1_updateHeight);
	else if (window.addEventListener)
		window.addEventListener("resize", sg1_updateHeight, false);
</script>
</head>
<body bgcolor=#888888>
 
<div class=links>
 
	Demo 1 &nbsp;&nbsp; </div>
 
<hr size=1 color=black>
 
 
<form name="Form1" method="post" action="Default2.aspx" id="Form1">
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJNjAzMTU4NTE3D2QWAgIBD2QWBAIBD2QWAgICDxQrAAsPFggeCERhdGFLZXlzFgAeC18hSXRlbUNvdW50AiMeCVBhZ2VDb3VudAIYHhVfIURhdGFTb3VyY2VJdGVtQ291bnQCvgZkZGRkZGRkZGQWCB4JR3JpZExpbmVzCyojU3lzdGVtLldlYi5VSS5XZWJDb250cm9scy5HcmlkTGluZXMAHgtCb3JkZXJXaWR0aBsAAAAAAAAAAAEAAAAeC0NlbGxQYWRkaW5nAgIeBF8hU0ICoIAoFCsADjwrAAQBABYIHgpIZWFkZXJUZXh0BQdPcmRlcklEHglEYXRhRmllbGQFB09yZGVySUQeDlNvcnRFeHByZXNzaW9uBQdPcmRlcklEHghSZWFkT25seWg8KwAEAQAWCB8IBQpDdXN0b21lcklEHwkFCkN1c3RvbWVySUQfCgUKQ3VzdG9tZXJJRB8LaDwrAAQBABYIHwgFCkVtcGxveWVlSUQfCQUKRW1wbG95ZWVJRB8KBQpFbXBsb3llZUlEHwtoPCsABAEAFggfCAUJT3JkZXJEYXRlHwkFCU9yZGVyRGF0ZR8KBQlPcmRlckRhdGUfC2g8KwAEAQAWCB8IBQxSZXF1aXJlZERhdGUfCQUMUmVxdWlyZWREYXRlHwoFDFJlcXVpcmVkRGF0ZR8LaDwrAAQBABYIHwgFC1NoaXBwZWREYXRlHwkFC1NoaXBwZWREYXRlHwoFC1NoaXBwZWREYXRlHwtoPCsABAEAFggfCAUHU2hpcFZpYR8JBQdTaGlwVmlhHwoFB1NoaXBWaWEfC2g8KwAEAQAWCB8IBQdGcmVpZ2h0HwkFB0ZyZWlnaHQfCgUHRnJlaWdodB8LaDwrAAQBABYIHwgFCFNoaXBOYW1lHwkFCFNoaXBOYW1lHwoFCFNoaXBOYW1lHwtoPCsABAEAFggfCAULU2hpcEFkZHJlc3MfCQULU2hpcEFkZHJlc3MfCgULU2hpcEFkZHJlc3MfC2g8KwAEAQAWCB8IBQhTaGlwQ2l0eR8JBQhTaGlwQ2l0eR8KBQhTaGlwQ2l0eR8LaDwrAAQBABYIHwgFClNoaXBSZWdpb24fCQUKU2hpcFJlZ2lvbh8KBQpTaGlwUmVnaW9uHwtoPCsABAEAFggfCAUOU2hpcFBvc3RhbENvZGUfCQUO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" />
 
<script type="text/javascript">
<!--
var theForm = document.forms['Form1'];
if (!theForm) {
    theForm = document.Form1;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
// -->
</script>
 
 
<script language=JavaScript src=ScrollingGrid.js></script>
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWMQKLl+XgBQKyuN+/BQKxuN+/BQK0uN+/BQKzuN+/BQK2uN+/BQK1uN+/BQK4uN+/BQK3uN+/BQKquN+/BQKpuN+/BQKxuJ/BBQKxuJvBBQKxuJfBBQKxuJPBBQL1/q2/DwL1/qm/DwL1/qW/DwL1/qG/DwL1/p2/DwL1/pm/DwL1/pW/DwL1/pG/DwL1/o2/DwLLyonXAQK0+ZbpCgK0+ZrpCgK0+Y7pCgK0+ZLpCgK0+YbpCgK0+YrpCgK0+f7oCgK0+YLpCgK0+bbpCgK0+brpCgKI5/fBCQLt/dmsDwLSlLyXBQK3q56CCwLQmYHxDwK1sOPbBQKax8XGCwLXp5bbAgK8vvjFCAKh1dqwDgKG7LybBALDzI2wCwKo4++aAQLQmcHZDT7UZbw1cEbPbG0HgNXx9xDp7NZD" />
 
 
	
 
		Variable width & height ScrollingGrid within a table. Control is set to update the last scroll position on postback.<br>
		<br>
 
		<table id=sdd name=ScrollingGrid style='width:100%; table-layout:fixed' cellpadding=0 cellspacing=0 border=0><tr><td>
<div id=sdd$divHdr style='overflow:hidden;margin-right:17px;'>
<table cellpadding=0 cellspacing=0 id=sdd$headerCntr><tr><td><table id=sdd$tblHdr border='0' cellpadding='2' cellspacing='0'  style='border-collapse:collapse;'> <tr></tr></table></td></tr></table>
 
</div>
<div id=sdd$divContent style='height:190px;overflow:scroll;' onscroll='updateScroll(this, "sdd")'><table cellpadding=0 cellspacing=0 id=sdd$contentCntr><tr><td>
 
			<table cellspacing="0" cellpadding="2" border="0" id="Grid2" style="border-width:0px;border-collapse:collapse;">
	<tr style="color:White;background-color:Red;font-weight:bold;">
		<td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl0','')" style="color:White;">OrderID</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl1','')" style="color:White;">CustomerID</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl2','')" style="color:White;">EmployeeID</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl3','')" style="color:White;">OrderDate</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl4','')" style="color:White;">RequiredDate</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl5','')" style="color:White;">ShippedDate</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl6','')" style="color:White;">ShipVia</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl7','')" style="color:White;">Freight</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl8','')" style="color:White;">ShipName</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl9','')" style="color:White;">ShipAddress</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl10','')" style="color:White;">ShipCity</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl11','')" style="color:White;">ShipRegion</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl12','')" style="color:White;">ShipPostalCode</a></td><td><a href="javascript:__doPostBack('Grid2$_ctl2$_ctl13','')" style="color:White;">ShipCountry</a></td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10248</td><td>VINET</td><td>5</td><td>1996/07/04 12:00:00 AM</td><td>1996/08/01 12:00:00 AM</td><td>1996/07/16 12:00:00 AM</td><td>3</td><td>32.38</td><td>Vins et alcools Chevalier</td><td>59 rue de l'Abbaye</td><td>Reims</td><td>&nbsp;</td><td>51100</td><td>France</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10249</td><td>TOMSP</td><td>6</td><td>1996/07/05 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1996/07/10 12:00:00 AM</td><td>1</td><td>11.61</td><td>Toms Spezialitäten</td><td>Luisenstr. 48</td><td>Münster</td><td>&nbsp;</td><td>44087</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10250</td><td>HANAR</td><td>4</td><td>1996/07/08 12:00:00 AM</td><td>1996/08/05 12:00:00 AM</td><td>1996/07/12 12:00:00 AM</td><td>2</td><td>65.83</td><td>Hanari Carnes</td><td>Rua do Paço, 67</td><td>Rio de Janeiro</td><td>RJ</td><td>05454-876</td><td>Brazil</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10251</td><td>VICTE</td><td>3</td><td>1996/07/08 12:00:00 AM</td><td>1996/08/05 12:00:00 AM</td><td>1996/07/15 12:00:00 AM</td><td>1</td><td>41.34</td><td>Victuailles en stock</td><td>2, rue du Commerce</td><td>Lyon</td><td>&nbsp;</td><td>69004</td><td>France</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10252</td><td>SUPRD</td><td>4</td><td>1996/07/09 12:00:00 AM</td><td>1996/08/06 12:00:00 AM</td><td>1996/07/11 12:00:00 AM</td><td>2</td><td>51.3</td><td>Suprêmes délices</td><td>Boulevard Tirou, 255</td><td>Charleroi</td><td>&nbsp;</td><td>B-6000</td><td>Belgium</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10253</td><td>HANAR</td><td>3</td><td>1996/07/10 12:00:00 AM</td><td>1996/07/24 12:00:00 AM</td><td>1996/07/16 12:00:00 AM</td><td>2</td><td>58.17</td><td>Hanari Carnes</td><td>Rua do Paço, 67</td><td>Rio de Janeiro</td><td>RJ</td><td>05454-876</td><td>Brazil</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10254</td><td>CHOPS</td><td>5</td><td>1996/07/11 12:00:00 AM</td><td>1996/08/08 12:00:00 AM</td><td>1996/07/23 12:00:00 AM</td><td>2</td><td>22.98</td><td>Chop-suey Chinese</td><td>Hauptstr. 31</td><td>Bern</td><td>&nbsp;</td><td>3012</td><td>Switzerland</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10255</td><td>RICSU</td><td>9</td><td>1996/07/12 12:00:00 AM</td><td>1996/08/09 12:00:00 AM</td><td>1996/07/15 12:00:00 AM</td><td>3</td><td>148.33</td><td>Richter Supermarkt</td><td>Starenweg 5</td><td>Genève</td><td>&nbsp;</td><td>1204</td><td>Switzerland</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10256</td><td>WELLI</td><td>3</td><td>1996/07/15 12:00:00 AM</td><td>1996/08/12 12:00:00 AM</td><td>1996/07/17 12:00:00 AM</td><td>2</td><td>13.97</td><td>Wellington Importadora</td><td>Rua do Mercado, 12</td><td>Resende</td><td>SP</td><td>08737-363</td><td>Brazil</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10257</td><td>HILAA</td><td>4</td><td>1996/07/16 12:00:00 AM</td><td>1996/08/13 12:00:00 AM</td><td>1996/07/22 12:00:00 AM</td><td>3</td><td>81.91</td><td>HILARION-Abastos</td><td>Carrera 22 con Ave. Carlos Soublette #8-35</td><td>San Cristóbal</td><td>Táchira</td><td>5022</td><td>Venezuela</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10258</td><td>ERNSH</td><td>1</td><td>1996/07/17 12:00:00 AM</td><td>1996/08/14 12:00:00 AM</td><td>1996/07/23 12:00:00 AM</td><td>1</td><td>140.51</td><td>Ernst Handel</td><td>Kirchgasse 6</td><td>Graz</td><td>&nbsp;</td><td>8010</td><td>Austria</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10259</td><td>CENTC</td><td>4</td><td>1996/07/18 12:00:00 AM</td><td>1996/08/15 12:00:00 AM</td><td>1996/07/25 12:00:00 AM</td><td>3</td><td>3.25</td><td>Centro comercial Moctezuma</td><td>Sierras de Granada 9993</td><td>México D.F.</td><td>&nbsp;</td><td>05022</td><td>Mexico</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10260</td><td>OTTIK</td><td>4</td><td>1996/07/19 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1996/07/29 12:00:00 AM</td><td>1</td><td>55.09</td><td>Ottilies Käseladen</td><td>Mehrheimerstr. 369</td><td>Köln</td><td>&nbsp;</td><td>50739</td><td>Germany</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10261</td><td>QUEDE</td><td>4</td><td>1996/07/19 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1996/07/30 12:00:00 AM</td><td>2</td><td>3.05</td><td>Que Delícia</td><td>Rua da Panificadora, 12</td><td>Rio de Janeiro</td><td>RJ</td><td>02389-673</td><td>Brazil</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10262</td><td>RATTC</td><td>8</td><td>1996/07/22 12:00:00 AM</td><td>1996/08/19 12:00:00 AM</td><td>1996/07/25 12:00:00 AM</td><td>3</td><td>48.29</td><td>Rattlesnake Canyon Grocery</td><td>2817 Milton Dr.</td><td>Albuquerque</td><td>NM</td><td>87110</td><td>USA</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10263</td><td>ERNSH</td><td>9</td><td>1996/07/23 12:00:00 AM</td><td>1996/08/20 12:00:00 AM</td><td>1996/07/31 12:00:00 AM</td><td>3</td><td>146.06</td><td>Ernst Handel</td><td>Kirchgasse 6</td><td>Graz</td><td>&nbsp;</td><td>8010</td><td>Austria</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10264</td><td>FOLKO</td><td>6</td><td>1996/07/24 12:00:00 AM</td><td>1996/08/21 12:00:00 AM</td><td>1996/08/23 12:00:00 AM</td><td>3</td><td>3.67</td><td>Folk och fä HB</td><td>Åkergatan 24</td><td>Bräcke</td><td>&nbsp;</td><td>S-844 67</td><td>Sweden</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10265</td><td>BLONP</td><td>2</td><td>1996/07/25 12:00:00 AM</td><td>1996/08/22 12:00:00 AM</td><td>1996/08/12 12:00:00 AM</td><td>1</td><td>55.28</td><td>Blondel père et fils</td><td>24, place Kléber</td><td>Strasbourg</td><td>&nbsp;</td><td>67000</td><td>France</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10266</td><td>WARTH</td><td>3</td><td>1996/07/26 12:00:00 AM</td><td>1996/09/06 12:00:00 AM</td><td>1996/07/31 12:00:00 AM</td><td>3</td><td>25.73</td><td>Wartian Herkku</td><td>Torikatu 38</td><td>Oulu</td><td>&nbsp;</td><td>90110</td><td>Finland</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10267</td><td>FRANK</td><td>4</td><td>1996/07/29 12:00:00 AM</td><td>1996/08/26 12:00:00 AM</td><td>1996/08/06 12:00:00 AM</td><td>1</td><td>208.58</td><td>Frankenversand</td><td>Berliner Platz 43</td><td>München</td><td>&nbsp;</td><td>80805</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10268</td><td>GROSR</td><td>8</td><td>1996/07/30 12:00:00 AM</td><td>1996/08/27 12:00:00 AM</td><td>1996/08/02 12:00:00 AM</td><td>3</td><td>66.29</td><td>GROSELLA-Restaurante</td><td>5ª Ave. Los Palos Grandes</td><td>Caracas</td><td>DF</td><td>1081</td><td>Venezuela</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10269</td><td>WHITC</td><td>5</td><td>1996/07/31 12:00:00 AM</td><td>1996/08/14 12:00:00 AM</td><td>1996/08/09 12:00:00 AM</td><td>1</td><td>4.56</td><td>White Clover Markets</td><td>1029 - 12th Ave. S.</td><td>Seattle</td><td>WA</td><td>98124</td><td>USA</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10270</td><td>WARTH</td><td>1</td><td>1996/08/01 12:00:00 AM</td><td>1996/08/29 12:00:00 AM</td><td>1996/08/02 12:00:00 AM</td><td>1</td><td>136.54</td><td>Wartian Herkku</td><td>Torikatu 38</td><td>Oulu</td><td>&nbsp;</td><td>90110</td><td>Finland</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10271</td><td>SPLIR</td><td>6</td><td>1996/08/01 12:00:00 AM</td><td>1996/08/29 12:00:00 AM</td><td>1996/08/30 12:00:00 AM</td><td>2</td><td>4.54</td><td>Split Rail Beer & Ale</td><td>P.O. Box 555</td><td>Lander</td><td>WY</td><td>82520</td><td>USA</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10272</td><td>RATTC</td><td>6</td><td>1996/08/02 12:00:00 AM</td><td>1996/08/30 12:00:00 AM</td><td>1996/08/06 12:00:00 AM</td><td>2</td><td>98.03</td><td>Rattlesnake Canyon Grocery</td><td>2817 Milton Dr.</td><td>Albuquerque</td><td>NM</td><td>87110</td><td>USA</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10273</td><td>QUICK</td><td>3</td><td>1996/08/05 12:00:00 AM</td><td>1996/09/02 12:00:00 AM</td><td>1996/08/12 12:00:00 AM</td><td>3</td><td>76.07</td><td>QUICK-Stop</td><td>Taucherstraße 10</td><td>Cunewalde</td><td>&nbsp;</td><td>01307</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10274</td><td>VINET</td><td>6</td><td>1996/08/06 12:00:00 AM</td><td>1996/09/03 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1</td><td>6.01</td><td>Vins et alcools Chevalier</td><td>59 rue de l'Abbaye</td><td>Reims</td><td>&nbsp;</td><td>51100</td><td>France</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10275</td><td>MAGAA</td><td>1</td><td>1996/08/07 12:00:00 AM</td><td>1996/09/04 12:00:00 AM</td><td>1996/08/09 12:00:00 AM</td><td>1</td><td>26.93</td><td>Magazzini Alimentari Riuniti</td><td>Via Ludovico il Moro 22</td><td>Bergamo</td><td>&nbsp;</td><td>24100</td><td>Italy</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10276</td><td>TORTU</td><td>8</td><td>1996/08/08 12:00:00 AM</td><td>1996/08/22 12:00:00 AM</td><td>1996/08/14 12:00:00 AM</td><td>3</td><td>13.84</td><td>Tortuga Restaurante</td><td>Avda. Azteca 123</td><td>México D.F.</td><td>&nbsp;</td><td>05033</td><td>Mexico</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10277</td><td>MORGK</td><td>2</td><td>1996/08/09 12:00:00 AM</td><td>1996/09/06 12:00:00 AM</td><td>1996/08/13 12:00:00 AM</td><td>3</td><td>125.77</td><td>Morgenstern Gesundkost</td><td>Heerstr. 22</td><td>Leipzig</td><td>&nbsp;</td><td>04179</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10278</td><td>BERGS</td><td>8</td><td>1996/08/12 12:00:00 AM</td><td>1996/09/09 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>2</td><td>92.69</td><td>Berglunds snabbköp</td><td>Berguvsvägen  8</td><td>Luleå</td><td>&nbsp;</td><td>S-958 22</td><td>Sweden</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10279</td><td>LEHMS</td><td>8</td><td>1996/08/13 12:00:00 AM</td><td>1996/09/10 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>2</td><td>25.83</td><td>Lehmanns Marktstand</td><td>Magazinweg 7</td><td>Frankfurt a.M.</td><td>&nbsp;</td><td>60528</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10280</td><td>BERGS</td><td>2</td><td>1996/08/14 12:00:00 AM</td><td>1996/09/11 12:00:00 AM</td><td>1996/09/12 12:00:00 AM</td><td>1</td><td>8.98</td><td>Berglunds snabbköp</td><td>Berguvsvägen  8</td><td>Luleå</td><td>&nbsp;</td><td>S-958 22</td><td>Sweden</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10281</td><td>ROMEY</td><td>4</td><td>1996/08/14 12:00:00 AM</td><td>1996/08/28 12:00:00 AM</td><td>1996/08/21 12:00:00 AM</td><td>1</td><td>2.94</td><td>Romero y tomillo</td><td>Gran Vía, 1</td><td>Madrid</td><td>&nbsp;</td><td>28001</td><td>Spain</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10282</td><td>ROMEY</td><td>4</td><td>1996/08/15 12:00:00 AM</td><td>1996/09/12 12:00:00 AM</td><td>1996/08/21 12:00:00 AM</td><td>1</td><td>12.69</td><td>Romero y tomillo</td><td>Gran Vía, 1</td><td>Madrid</td><td>&nbsp;</td><td>28001</td><td>Spain</td>
 
	</tr><tr style="color:White;background-color:Silver;">
		<td><span>1</span>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl1','')" style="color:White;">2</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl2','')" style="color:White;">3</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl3','')" style="color:White;">4</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl4','')" style="color:White;">5</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl5','')" style="color:White;">6</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl6','')" style="color:White;">7</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl7','')" style="color:White;">8</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl8','')" style="color:White;">9</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl9','')" style="color:White;">10</a>&nbsp;<a href="javascript:__doPostBack('Grid2$_ctl39$_ctl10','')" style="color:White;">...</a></td>
	</tr>
 
</table>
 
		</td></tr></table>
</div>
<input type=hidden name=sdd$hdnScrollPos id=sdd$hdnScrollPos>
<table id=sdd$tblPager cellpadding=2 cellspacing=0 style='width:100%;'> <tr></tr></table>
<script language=javascript>
<!--
 setTimeout("initScrollingGrid('sdd', 'Grid2', true)", 50) 
//--></script></td></tr></table>
 
 
 
		<script language=javascript>
		<!--
		setTimeout("sg1_updateHeight()", 100)
		//--></script>
 
	
 
 
	<br>
 
 
	
 
ScrollingGrid within a User control.<br>
 
 
<table id=DemoControl1_sg1 name=ScrollingGrid style='width:100%; table-layout:fixed' cellpadding=0 cellspacing=0 border=0><tr><td>
<div id=DemoControl1_sg1$divHdr style='overflow:hidden;'>
<table cellpadding=0 cellspacing=0 id=DemoControl1_sg1$headerCntr><tr><td><table id=DemoControl1_sg1$tblHdr border='0' cellpadding='5' cellspacing='1' > <tr></tr></table></td></tr></table>
</div>
<div id=DemoControl1_sg1$divContent style='height:140px;overflow:scroll;' onscroll='updateScroll(this, "DemoControl1_sg1")'><table cellpadding=0 cellspacing=0 id=DemoControl1_sg1$contentCntr><tr><td>
 
	<table cellspacing="1" cellpadding="5" border="0" id="DemoControl1_Grid2" style="border-width:0px;">
	<tr style="color:White;background-color:Fuchsia;font-weight:bold;">
		<td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl0','')" style="color:White;">OrderID</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl1','')" style="color:White;">CustomerID</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl2','')" style="color:White;">EmployeeID</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl3','')" style="color:White;">OrderDate</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl4','')" style="color:White;">RequiredDate</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl5','')" style="color:White;">ShippedDate</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl6','')" style="color:White;">ShipVia</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl7','')" style="color:White;">Freight</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl8','')" style="color:White;">ShipName</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl9','')" style="color:White;">ShipAddress</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl10','')" style="color:White;">ShipCity</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl11','')" style="color:White;">ShipRegion</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl12','')" style="color:White;">ShipPostalCode</a></td><td><a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl2$_ctl13','')" style="color:White;">ShipCountry</a></td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10248</td><td>VINET</td><td>5</td><td>1996/07/04 12:00:00 AM</td><td>1996/08/01 12:00:00 AM</td><td>1996/07/16 12:00:00 AM</td><td>3</td><td>32.38</td><td>Vins et alcools Chevalier</td><td>59 rue de l'Abbaye</td><td>Reims</td><td>&nbsp;</td><td>51100</td><td>France</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10249</td><td>TOMSP</td><td>6</td><td>1996/07/05 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1996/07/10 12:00:00 AM</td><td>1</td><td>11.61</td><td>Toms Spezialitäten</td><td>Luisenstr. 48</td><td>Münster</td><td>&nbsp;</td><td>44087</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10250</td><td>HANAR</td><td>4</td><td>1996/07/08 12:00:00 AM</td><td>1996/08/05 12:00:00 AM</td><td>1996/07/12 12:00:00 AM</td><td>2</td><td>65.83</td><td>Hanari Carnes</td><td>Rua do Paço, 67</td><td>Rio de Janeiro</td><td>RJ</td><td>05454-876</td><td>Brazil</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10251</td><td>VICTE</td><td>3</td><td>1996/07/08 12:00:00 AM</td><td>1996/08/05 12:00:00 AM</td><td>1996/07/15 12:00:00 AM</td><td>1</td><td>41.34</td><td>Victuailles en stock</td><td>2, rue du Commerce</td><td>Lyon</td><td>&nbsp;</td><td>69004</td><td>France</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10252</td><td>SUPRD</td><td>4</td><td>1996/07/09 12:00:00 AM</td><td>1996/08/06 12:00:00 AM</td><td>1996/07/11 12:00:00 AM</td><td>2</td><td>51.3</td><td>Suprêmes délices</td><td>Boulevard Tirou, 255</td><td>Charleroi</td><td>&nbsp;</td><td>B-6000</td><td>Belgium</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10253</td><td>HANAR</td><td>3</td><td>1996/07/10 12:00:00 AM</td><td>1996/07/24 12:00:00 AM</td><td>1996/07/16 12:00:00 AM</td><td>2</td><td>58.17</td><td>Hanari Carnes</td><td>Rua do Paço, 67</td><td>Rio de Janeiro</td><td>RJ</td><td>05454-876</td><td>Brazil</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10254</td><td>CHOPS</td><td>5</td><td>1996/07/11 12:00:00 AM</td><td>1996/08/08 12:00:00 AM</td><td>1996/07/23 12:00:00 AM</td><td>2</td><td>22.98</td><td>Chop-suey Chinese</td><td>Hauptstr. 31</td><td>Bern</td><td>&nbsp;</td><td>3012</td><td>Switzerland</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10255</td><td>RICSU</td><td>9</td><td>1996/07/12 12:00:00 AM</td><td>1996/08/09 12:00:00 AM</td><td>1996/07/15 12:00:00 AM</td><td>3</td><td>148.33</td><td>Richter Supermarkt</td><td>Starenweg 5</td><td>Genève</td><td>&nbsp;</td><td>1204</td><td>Switzerland</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10256</td><td>WELLI</td><td>3</td><td>1996/07/15 12:00:00 AM</td><td>1996/08/12 12:00:00 AM</td><td>1996/07/17 12:00:00 AM</td><td>2</td><td>13.97</td><td>Wellington Importadora</td><td>Rua do Mercado, 12</td><td>Resende</td><td>SP</td><td>08737-363</td><td>Brazil</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10257</td><td>HILAA</td><td>4</td><td>1996/07/16 12:00:00 AM</td><td>1996/08/13 12:00:00 AM</td><td>1996/07/22 12:00:00 AM</td><td>3</td><td>81.91</td><td>HILARION-Abastos</td><td>Carrera 22 con Ave. Carlos Soublette #8-35</td><td>San Cristóbal</td><td>Táchira</td><td>5022</td><td>Venezuela</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10258</td><td>ERNSH</td><td>1</td><td>1996/07/17 12:00:00 AM</td><td>1996/08/14 12:00:00 AM</td><td>1996/07/23 12:00:00 AM</td><td>1</td><td>140.51</td><td>Ernst Handel</td><td>Kirchgasse 6</td><td>Graz</td><td>&nbsp;</td><td>8010</td><td>Austria</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10259</td><td>CENTC</td><td>4</td><td>1996/07/18 12:00:00 AM</td><td>1996/08/15 12:00:00 AM</td><td>1996/07/25 12:00:00 AM</td><td>3</td><td>3.25</td><td>Centro comercial Moctezuma</td><td>Sierras de Granada 9993</td><td>México D.F.</td><td>&nbsp;</td><td>05022</td><td>Mexico</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10260</td><td>OTTIK</td><td>4</td><td>1996/07/19 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1996/07/29 12:00:00 AM</td><td>1</td><td>55.09</td><td>Ottilies Käseladen</td><td>Mehrheimerstr. 369</td><td>Köln</td><td>&nbsp;</td><td>50739</td><td>Germany</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10261</td><td>QUEDE</td><td>4</td><td>1996/07/19 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1996/07/30 12:00:00 AM</td><td>2</td><td>3.05</td><td>Que Delícia</td><td>Rua da Panificadora, 12</td><td>Rio de Janeiro</td><td>RJ</td><td>02389-673</td><td>Brazil</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10262</td><td>RATTC</td><td>8</td><td>1996/07/22 12:00:00 AM</td><td>1996/08/19 12:00:00 AM</td><td>1996/07/25 12:00:00 AM</td><td>3</td><td>48.29</td><td>Rattlesnake Canyon Grocery</td><td>2817 Milton Dr.</td><td>Albuquerque</td><td>NM</td><td>87110</td><td>USA</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10263</td><td>ERNSH</td><td>9</td><td>1996/07/23 12:00:00 AM</td><td>1996/08/20 12:00:00 AM</td><td>1996/07/31 12:00:00 AM</td><td>3</td><td>146.06</td><td>Ernst Handel</td><td>Kirchgasse 6</td><td>Graz</td><td>&nbsp;</td><td>8010</td><td>Austria</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10264</td><td>FOLKO</td><td>6</td><td>1996/07/24 12:00:00 AM</td><td>1996/08/21 12:00:00 AM</td><td>1996/08/23 12:00:00 AM</td><td>3</td><td>3.67</td><td>Folk och fä HB</td><td>Åkergatan 24</td><td>Bräcke</td><td>&nbsp;</td><td>S-844 67</td><td>Sweden</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10265</td><td>BLONP</td><td>2</td><td>1996/07/25 12:00:00 AM</td><td>1996/08/22 12:00:00 AM</td><td>1996/08/12 12:00:00 AM</td><td>1</td><td>55.28</td><td>Blondel père et fils</td><td>24, place Kléber</td><td>Strasbourg</td><td>&nbsp;</td><td>67000</td><td>France</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10266</td><td>WARTH</td><td>3</td><td>1996/07/26 12:00:00 AM</td><td>1996/09/06 12:00:00 AM</td><td>1996/07/31 12:00:00 AM</td><td>3</td><td>25.73</td><td>Wartian Herkku</td><td>Torikatu 38</td><td>Oulu</td><td>&nbsp;</td><td>90110</td><td>Finland</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10267</td><td>FRANK</td><td>4</td><td>1996/07/29 12:00:00 AM</td><td>1996/08/26 12:00:00 AM</td><td>1996/08/06 12:00:00 AM</td><td>1</td><td>208.58</td><td>Frankenversand</td><td>Berliner Platz 43</td><td>München</td><td>&nbsp;</td><td>80805</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10268</td><td>GROSR</td><td>8</td><td>1996/07/30 12:00:00 AM</td><td>1996/08/27 12:00:00 AM</td><td>1996/08/02 12:00:00 AM</td><td>3</td><td>66.29</td><td>GROSELLA-Restaurante</td><td>5ª Ave. Los Palos Grandes</td><td>Caracas</td><td>DF</td><td>1081</td><td>Venezuela</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10269</td><td>WHITC</td><td>5</td><td>1996/07/31 12:00:00 AM</td><td>1996/08/14 12:00:00 AM</td><td>1996/08/09 12:00:00 AM</td><td>1</td><td>4.56</td><td>White Clover Markets</td><td>1029 - 12th Ave. S.</td><td>Seattle</td><td>WA</td><td>98124</td><td>USA</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10270</td><td>WARTH</td><td>1</td><td>1996/08/01 12:00:00 AM</td><td>1996/08/29 12:00:00 AM</td><td>1996/08/02 12:00:00 AM</td><td>1</td><td>136.54</td><td>Wartian Herkku</td><td>Torikatu 38</td><td>Oulu</td><td>&nbsp;</td><td>90110</td><td>Finland</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10271</td><td>SPLIR</td><td>6</td><td>1996/08/01 12:00:00 AM</td><td>1996/08/29 12:00:00 AM</td><td>1996/08/30 12:00:00 AM</td><td>2</td><td>4.54</td><td>Split Rail Beer & Ale</td><td>P.O. Box 555</td><td>Lander</td><td>WY</td><td>82520</td><td>USA</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10272</td><td>RATTC</td><td>6</td><td>1996/08/02 12:00:00 AM</td><td>1996/08/30 12:00:00 AM</td><td>1996/08/06 12:00:00 AM</td><td>2</td><td>98.03</td><td>Rattlesnake Canyon Grocery</td><td>2817 Milton Dr.</td><td>Albuquerque</td><td>NM</td><td>87110</td><td>USA</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10273</td><td>QUICK</td><td>3</td><td>1996/08/05 12:00:00 AM</td><td>1996/09/02 12:00:00 AM</td><td>1996/08/12 12:00:00 AM</td><td>3</td><td>76.07</td><td>QUICK-Stop</td><td>Taucherstraße 10</td><td>Cunewalde</td><td>&nbsp;</td><td>01307</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10274</td><td>VINET</td><td>6</td><td>1996/08/06 12:00:00 AM</td><td>1996/09/03 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>1</td><td>6.01</td><td>Vins et alcools Chevalier</td><td>59 rue de l'Abbaye</td><td>Reims</td><td>&nbsp;</td><td>51100</td><td>France</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10275</td><td>MAGAA</td><td>1</td><td>1996/08/07 12:00:00 AM</td><td>1996/09/04 12:00:00 AM</td><td>1996/08/09 12:00:00 AM</td><td>1</td><td>26.93</td><td>Magazzini Alimentari Riuniti</td><td>Via Ludovico il Moro 22</td><td>Bergamo</td><td>&nbsp;</td><td>24100</td><td>Italy</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10276</td><td>TORTU</td><td>8</td><td>1996/08/08 12:00:00 AM</td><td>1996/08/22 12:00:00 AM</td><td>1996/08/14 12:00:00 AM</td><td>3</td><td>13.84</td><td>Tortuga Restaurante</td><td>Avda. Azteca 123</td><td>México D.F.</td><td>&nbsp;</td><td>05033</td><td>Mexico</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10277</td><td>MORGK</td><td>2</td><td>1996/08/09 12:00:00 AM</td><td>1996/09/06 12:00:00 AM</td><td>1996/08/13 12:00:00 AM</td><td>3</td><td>125.77</td><td>Morgenstern Gesundkost</td><td>Heerstr. 22</td><td>Leipzig</td><td>&nbsp;</td><td>04179</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10278</td><td>BERGS</td><td>8</td><td>1996/08/12 12:00:00 AM</td><td>1996/09/09 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>2</td><td>92.69</td><td>Berglunds snabbköp</td><td>Berguvsvägen  8</td><td>Luleå</td><td>&nbsp;</td><td>S-958 22</td><td>Sweden</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10279</td><td>LEHMS</td><td>8</td><td>1996/08/13 12:00:00 AM</td><td>1996/09/10 12:00:00 AM</td><td>1996/08/16 12:00:00 AM</td><td>2</td><td>25.83</td><td>Lehmanns Marktstand</td><td>Magazinweg 7</td><td>Frankfurt a.M.</td><td>&nbsp;</td><td>60528</td><td>Germany</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10280</td><td>BERGS</td><td>2</td><td>1996/08/14 12:00:00 AM</td><td>1996/09/11 12:00:00 AM</td><td>1996/09/12 12:00:00 AM</td><td>1</td><td>8.98</td><td>Berglunds snabbköp</td><td>Berguvsvägen  8</td><td>Luleå</td><td>&nbsp;</td><td>S-958 22</td><td>Sweden</td>
 
	</tr><tr style="background-color:#EEEEEE;">
		<td>10281</td><td>ROMEY</td><td>4</td><td>1996/08/14 12:00:00 AM</td><td>1996/08/28 12:00:00 AM</td><td>1996/08/21 12:00:00 AM</td><td>1</td><td>2.94</td><td>Romero y tomillo</td><td>Gran Vía, 1</td><td>Madrid</td><td>&nbsp;</td><td>28001</td><td>Spain</td>
 
	</tr><tr style="background-color:#FEFEFE;">
		<td>10282</td><td>ROMEY</td><td>4</td><td>1996/08/15 12:00:00 AM</td><td>1996/09/12 12:00:00 AM</td><td>1996/08/21 12:00:00 AM</td><td>1</td><td>12.69</td><td>Romero y tomillo</td><td>Gran Vía, 1</td><td>Madrid</td><td>&nbsp;</td><td>28001</td><td>Spain</td>
 
	</tr><tr style="color:White;background-color:Silver;">
		<td><span>1</span>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl1','')" style="color:White;">2</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl2','')" style="color:White;">3</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl3','')" style="color:White;">4</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl4','')" style="color:White;">5</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl5','')" style="color:White;">6</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl6','')" style="color:White;">7</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl7','')" style="color:White;">8</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl8','')" style="color:White;">9</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl9','')" style="color:White;">10</a>&nbsp;<a href="javascript:__doPostBack('DemoControl1$Grid2$_ctl39$_ctl10','')" style="color:White;">...</a></td>
	</tr>
 
</table>
 
</td></tr></table>
</div>
<input type=hidden name=DemoControl1_sg1$hdnScrollPos id=DemoControl1_sg1$hdnScrollPos>
<table id=DemoControl1_sg1$tblPager cellpadding=5 cellspacing=1 style='width:100%;'> <tr></tr></table>
<script language=javascript>
<!--
 setTimeout("initScrollingGrid('DemoControl1_sg1', 'DemoControl1_Grid2', true)", 50) 
//--></script></td></tr></table>
 
 
 
 
 
</form>
 
 
<br>
 
 
<div style="padding:5px; background-color:#eeeeee">
 
	<h1 style="font-size:14px; margin:0">Simple implementation - just wrap the ScrollingGrid control around your existing DataGrid control:</h1>
	<br>
 
	&lt;avg:ScrollingGrid ID=sg1 runat=server Width=95% Height=190 HeaderWidthReduction=17&gt;<br>
	<br>
	&nbsp;&lt;asp:DataGrid runat=server ID=Grid2 CellPadding=5 CellSpacing=1<br>
 
	&nbsp;&nbsp;AutoGenerateColumns=True AllowSorting=True AllowPaging=True PageSize=35<br>
	&nbsp;&nbsp;OnPageIndexChanged=Grid2_PageIndexChanged OnSortCommand=Grid2_Sort&gt;<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&lt;HeaderStyle BackColor=red ForeColor=white Font-Bold=True /&gt;<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&lt;ItemStyle BackColor=#fefefe /&gt;<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&lt;AlternatingItemStyle BackColor=#eeeeee /&gt;<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&lt;PagerStyle BackColor=silver ForeColor=White Mode=NumericPages /&gt;<br>
 
	&nbsp;&lt;/asp:DataGrid&gt;<br>
	<br>
	&lt;/avg:ScrollingGrid&gt;<br>
 
</div>
 
<br><br>
 
 
</body>
</html>

Open in new window

ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Cyber-spy

Fantastic!!!!!

Did as you suggested -  remove dthe line and ran it.

FF works 100%.

IE7 displays the page, correctly, but then immediately freezes up and has to be killed off via the Task Manager.  Since it's working in IE7 with you, it's obviously something in my configuration. Any thopughts?

An update .....

After attempting to browse in IE, I forgot to kill the attempt off and carried on with other things. After about 15 minutes, the page displayed ... weirdly and behaving strangely...

The first grid displays with an extended scrolbar (see attched jpg) and a left-right scrollbar that doesn't work.

The 2nd grid displays correctly and one can scrioll left/right and up/down, but the scroll bar position marker doesn't move.

As my page was static HTML page, with nothing being generated on the server, and nothing to react to if I clicked any buttons, I can't recreate these behavioural problems. The static pages did however display correctly in IE7

Before you go any further, you might want to try restarting IIS to make sure there are no stray processes around, and then try loading the page again.

As the removal of that one line would not have caused these problems, I think this is another issue.
I'm not running IIS  --- file-based system as my home PC is still on XP Home. Could this be an issue?


I am happy that this issue is now resolved and want to close it off. Can you suggest an appropriate zone for the "hanging up in IE" issue?
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Many thanks for all your efforts! APologies for taking so long to close this.