I am looking for a control that allows our users to expand and collapse
rows in a report.
Currently, the report is being shown in a web page generated from a CGI
script. Unfortunately, the report is huge, and the user cannot expand
and collapse the rows in the report. This means loading that large
amount of data into the web browser takes a long time, and sometimes
the report has so much data that it crashes the browser. Moreover, our
users find that there is just too much data to digest at once. I have
the report to show different level of details (like level-1 report,
level-2 report, ... level-7 report). But the users want to be able to
start from the level-1 report and zoom-in to see additional details of
individual entrries in the report.
I am thinking of presenting the report using .NET interface, and take
advantage of the controls available in .NET to present the report (and
I have done a project in .NET Compact Framework before). But I am not
familiar with the controls in .NET. I am hoping that someone here can
tell me which control in .NET is likely to be right for me.
I am thinking of using a TreeView control. But I am afraid that it is
probably only suitable for showing files and folders. It may not be
suitable for showing rows in a report because the data in the report
should be shown in rows and columns format where the cell in one row
should align correctly with the cell in the previous row.
I am thinking of using a DataGrid control and put a + or - sign in the
beginning of each row for the user to click at. But I am wondering
whether I can dynamically insert rows into the DataGrid control like
when a user tries to expand a row to see the lower level of info about
the row, or if a DataGrid control can only accept static data. And I
am also wondering how fast it can refresh the image of the DataGrid
control to show the new rows that I have added to the control
programmatically.
Any other better control that will do the job?
Thanks in advance for any suggestion.
Jay Chan