473,748 Members | 7,571 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Lazy Loading Grid Object

I need to build a web page that has to potentially display a large amount of
data in two grids on the same page. The HTML file with all of the formatting
is about 7MB in size. This is too large and I need to implement some kind of
"client side" lazy loading.

What I mean is this: I want to display a grid that only shows, say, 20
records. I need an external scrollbar control that I can then show on the
screen next to the grid. When the user moves the scroll bar, I want to load
only that window of data into the grid.

Preferably, I would like to do this client-side without a postback event,
because I have more than one grid of data on a single web page. Both of
which will need this capability.

Anyone have any suggestions, third party software, or otherwise that I can
look at?

P.S. I would prefer an external scroll bar rather than one that comes with
each grid because I want one scroll bar to control two grids simultaneously.
I.e. The horizontal scrollbar control scrolls both grids' right and left
movement. Vertical scrollbars are associated with each grid independently.
Nov 18 '05 #1
4 3285
not quite sure what you are on about but -

in our websites (classic and .net)
we call out from the client using the xmlhttp object which can either
- call a page which returns xml
- call a sqlxml template which returns xml

you can then easily bind the grid to the xml

this is not a .net postback
this doesn't require the page to reload and can happen in the background
you can also do it from classic asp

what you are on about sounds more like paging rather than scrolling

datagrid supports paging and i'm sure you could easily link 2 grids to fire
on each others page change event

i just don't think the 'load a bit at a time on scrolling with a scroll bar'
is going to work

when you've got the xml down on the client (can assume msxml3 if using IE6)
you can always use an XSL to transform the result to an html doc. This is
another approach we have used in the past

"blackhawk" wrote:
I need to build a web page that has to potentially display a large amount of
data in two grids on the same page. The HTML file with all of the formatting
is about 7MB in size. This is too large and I need to implement some kind of
"client side" lazy loading.

What I mean is this: I want to display a grid that only shows, say, 20
records. I need an external scrollbar control that I can then show on the
screen next to the grid. When the user moves the scroll bar, I want to load
only that window of data into the grid.

Preferably, I would like to do this client-side without a postback event,
because I have more than one grid of data on a single web page. Both of
which will need this capability.

Anyone have any suggestions, third party software, or otherwise that I can
look at?

P.S. I would prefer an external scroll bar rather than one that comes with
each grid because I want one scroll bar to control two grids simultaneously.
I.e. The horizontal scrollbar control scrolls both grids' right and left
movement. Vertical scrollbars are associated with each grid independently.

Nov 18 '05 #2
Adolf,

I am not looking for paging. I guess you could say that what I am looking
for is very similar to how Query Analyzer works when you open a table for
viewing that is very large.

You open the table, it loads the first X records and then as you scroll
down, it loads those records. It does not try to load the entire table at
once.

This is effectively what I am trying to accomplish, but on the web instead
of in a windows app.

Do you have any samples or can you point me to some blogs that discuss this
in more detail?

"adolf garlic" wrote:
not quite sure what you are on about but -

in our websites (classic and .net)
we call out from the client using the xmlhttp object which can either
- call a page which returns xml
- call a sqlxml template which returns xml

you can then easily bind the grid to the xml

this is not a .net postback
this doesn't require the page to reload and can happen in the background
you can also do it from classic asp

what you are on about sounds more like paging rather than scrolling

datagrid supports paging and i'm sure you could easily link 2 grids to fire
on each others page change event

i just don't think the 'load a bit at a time on scrolling with a scroll bar'
is going to work

when you've got the xml down on the client (can assume msxml3 if using IE6)
you can always use an XSL to transform the result to an html doc. This is
another approach we have used in the past

"blackhawk" wrote:
I need to build a web page that has to potentially display a large amount of
data in two grids on the same page. The HTML file with all of the formatting
is about 7MB in size. This is too large and I need to implement some kind of
"client side" lazy loading.

What I mean is this: I want to display a grid that only shows, say, 20
records. I need an external scrollbar control that I can then show on the
screen next to the grid. When the user moves the scroll bar, I want to load
only that window of data into the grid.

Preferably, I would like to do this client-side without a postback event,
because I have more than one grid of data on a single web page. Both of
which will need this capability.

Anyone have any suggestions, third party software, or otherwise that I can
look at?

P.S. I would prefer an external scroll bar rather than one that comes with
each grid because I want one scroll bar to control two grids simultaneously.
I.e. The horizontal scrollbar control scrolls both grids' right and left
movement. Vertical scrollbars are associated with each grid independently.

Nov 18 '05 #3
you are not going to be able to do it how you want and the reason is simple

- query analyzer is a client server app

the web is stateless
as such you are going to have to load the whole lot or load it in sections
that's why i said about paging

you could have some kind of false scroll bar to fire an event which would
get an xmlhttp object to call to either a webpage or a sqlxml template to
return the section of data that you want
you could then cache those values in a local xml doc linked to the grid
by checking if you have it in the local xml doc, it will appear faster to
the user

the reason you won't be able to process some of the xml doc as it loads is
that it would not be well formed if you had a partial doc and so xmlhttp
object would have a fit

"blackhawk" wrote:
Adolf,

I am not looking for paging. I guess you could say that what I am looking
for is very similar to how Query Analyzer works when you open a table for
viewing that is very large.

You open the table, it loads the first X records and then as you scroll
down, it loads those records. It does not try to load the entire table at
once.

This is effectively what I am trying to accomplish, but on the web instead
of in a windows app.

Do you have any samples or can you point me to some blogs that discuss this
in more detail?

"adolf garlic" wrote:
not quite sure what you are on about but -

in our websites (classic and .net)
we call out from the client using the xmlhttp object which can either
- call a page which returns xml
- call a sqlxml template which returns xml

you can then easily bind the grid to the xml

this is not a .net postback
this doesn't require the page to reload and can happen in the background
you can also do it from classic asp

what you are on about sounds more like paging rather than scrolling

datagrid supports paging and i'm sure you could easily link 2 grids to fire
on each others page change event

i just don't think the 'load a bit at a time on scrolling with a scroll bar'
is going to work

when you've got the xml down on the client (can assume msxml3 if using IE6)
you can always use an XSL to transform the result to an html doc. This is
another approach we have used in the past

"blackhawk" wrote:
I need to build a web page that has to potentially display a large amount of
data in two grids on the same page. The HTML file with all of the formatting
is about 7MB in size. This is too large and I need to implement some kind of
"client side" lazy loading.

What I mean is this: I want to display a grid that only shows, say, 20
records. I need an external scrollbar control that I can then show on the
screen next to the grid. When the user moves the scroll bar, I want to load
only that window of data into the grid.

Preferably, I would like to do this client-side without a postback event,
because I have more than one grid of data on a single web page. Both of
which will need this capability.

Anyone have any suggestions, third party software, or otherwise that I can
look at?

P.S. I would prefer an external scroll bar rather than one that comes with
each grid because I want one scroll bar to control two grids simultaneously.
I.e. The horizontal scrollbar control scrolls both grids' right and left
movement. Vertical scrollbars are associated with each grid independently.

Nov 18 '05 #4
Adolf,

Yeah, I realize that I will be doing a "paging" type functionality, but make
it look like lazy loading to the user. I originally thought of just loading
the data page by page into a grid, but I kind of like the idea of sending it
to an xml file and then running the grid from the local xml.

Really, what it sounds like I need is a scrollbar object that I can get the
row count and use to set the size, then when the user clicks on the scroll
bar (or drags it down) I get the top position of the scroll bar then query
the server (perhaps a session state variable) for that starting record for n
records in length.

Problem is, I don't know of any scrollbar objects for the web.

Hey, I appreciate the thoughts, and sometimes having a sounding board helps
me. If you know of anyone doing this, please let me know....but it sounds
like I am blazing the trails once again! ;-(

"adolf garlic" wrote:
you are not going to be able to do it how you want and the reason is simple

- query analyzer is a client server app

the web is stateless
as such you are going to have to load the whole lot or load it in sections
that's why i said about paging

you could have some kind of false scroll bar to fire an event which would
get an xmlhttp object to call to either a webpage or a sqlxml template to
return the section of data that you want
you could then cache those values in a local xml doc linked to the grid
by checking if you have it in the local xml doc, it will appear faster to
the user

the reason you won't be able to process some of the xml doc as it loads is
that it would not be well formed if you had a partial doc and so xmlhttp
object would have a fit

"blackhawk" wrote:
Adolf,

I am not looking for paging. I guess you could say that what I am looking
for is very similar to how Query Analyzer works when you open a table for
viewing that is very large.

You open the table, it loads the first X records and then as you scroll
down, it loads those records. It does not try to load the entire table at
once.

This is effectively what I am trying to accomplish, but on the web instead
of in a windows app.

Do you have any samples or can you point me to some blogs that discuss this
in more detail?

"adolf garlic" wrote:
not quite sure what you are on about but -

in our websites (classic and .net)
we call out from the client using the xmlhttp object which can either
- call a page which returns xml
- call a sqlxml template which returns xml

you can then easily bind the grid to the xml

this is not a .net postback
this doesn't require the page to reload and can happen in the background
you can also do it from classic asp

what you are on about sounds more like paging rather than scrolling

datagrid supports paging and i'm sure you could easily link 2 grids to fire
on each others page change event

i just don't think the 'load a bit at a time on scrolling with a scroll bar'
is going to work

when you've got the xml down on the client (can assume msxml3 if using IE6)
you can always use an XSL to transform the result to an html doc. This is
another approach we have used in the past

"blackhawk" wrote:

> I need to build a web page that has to potentially display a large amount of
> data in two grids on the same page. The HTML file with all of the formatting
> is about 7MB in size. This is too large and I need to implement some kind of
> "client side" lazy loading.
>
> What I mean is this: I want to display a grid that only shows, say, 20
> records. I need an external scrollbar control that I can then show on the
> screen next to the grid. When the user moves the scroll bar, I want to load
> only that window of data into the grid.
>
> Preferably, I would like to do this client-side without a postback event,
> because I have more than one grid of data on a single web page. Both of
> which will need this capability.
>
> Anyone have any suggestions, third party software, or otherwise that I can
> look at?
>
> P.S. I would prefer an external scroll bar rather than one that comes with
> each grid because I want one scroll bar to control two grids simultaneously.
> I.e. The horizontal scrollbar control scrolls both grids' right and left
> movement. Vertical scrollbars are associated with each grid independently.
>
>

Nov 18 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
4045
by: Vinay Aggarwal | last post by:
I have been thinking about the lazy initialization and double checked locking problem. This problem is explain in detail here http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html I am not fully convinced that this problem cannot be solved. I am going to propose a solution here. For the sake of discussion I will post my solution here. It is possible that the proposed solution does not work, feedback and comments are...
12
2825
by: Siemel Naran | last post by:
What is a good idiom for handling a lazy object? I see 2 good possibilities. Any more, any comments? Which way do people here use? (1) class Thing { public: Thing(double x, double y) : x(x), y(y), calculated(false) { } double operator()() const {
0
1163
by: VM | last post by:
If I wanted to load an ascii file (which contains 400,000+ lines and each line is a table row) to a datatable and then display it to a datagrid, what would the best approach be? I initially had a method that would fill the table with the ascii file data (the parm was the fileName), it would return the filled datatable, and then I'd use it as a datasource for the grid. That was working well with small files but the client just told me that...
5
12237
by: John Richardson | last post by:
I've been bothered for some time about my DataGrid not populating my rows very quickly. I have about 10K rows loading into the grid. I create a datatable dt with 2 columns, an ID and a display. The ID is a member of the keys array. I then create a DataView dv over the table, and sort it by Display and ID column (in case of duplicate Display). I then set my DataGrid.DataSource = dv; I then load the datatable with my rows, and this is...
5
4333
by: schapopa | last post by:
I have a flex grid and I am loading data to this flex grid in this way While sqldr.Read j = j + 1 MSFlexGrid1PLSummary.set_TextMatrix(MSFlexGrid1PLSummary.Row, MSFlexGrid1PLSummary.Col, sqldr("date1") & "q-" & sqldr("date2")) MSFlexGrid1PLSummary.Row = 1 MSFlexGrid1PLSummary.CellFontBold = True If Not IsNothing(sqldr("Total1")) Then
7
1808
by: koonda | last post by:
Hi guys, I am trying to create a web interface in C# using ASP.NET. The database being used is SQL Server. I have some problems loading the tables in the datalist controls. When I run the program the DataList controls are loaded not with tables but something like this: "System.Data.DataRowView" in the three list boxe controls. Because I have three tables and I want to load them in the three list box controls. And then I want to select values...
2
5892
by: fredd00 | last post by:
Hi, i'm trying to use lazy loading with Linq to sql and related objects seems like you can only call the child object if the context is still open, this is not real lazy loading. here is my actual implementation my class product has a categories collection (using a one-to-many relation in .dbml)
2
2530
by: Michael Bray | last post by:
With the recent release of EF I've decided to dig into it a bit more than I did before... the question I'm specifically interested in, but haven't been able to find a resource to answer it is... when using Table-per-Type with inherited entities, is it possible to lazy load the base classes? For example, if I have an entity called "Person" and an entity called "Employee" and (obviously) Employee inherits from Person, is it possible to...
0
1259
by: teressa | last post by:
Hi, I am new to Grid view Control. I have a page with many icons on it for different purposes. I want to add a Grid View where I want to load data with different columns. Below is my code(xyz.aspx).Where i need to add the aspx page to my original page.(I tried adding to my HTML page but it returns with an error(We’re sorry, the application is currently unavailable. If you need any assistance, please contact ...)instead of loading data. I...
0
8991
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9544
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
9324
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8243
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6796
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6074
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4606
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4874
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3313
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.