Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > ASP .Net Datagrid Control > Two questions: datagrid with string[] and how to differentiate between columns

Reply
Thread Tools

Two questions: datagrid with string[] and how to differentiate between columns

 
 
Bob Weiner
Guest
Posts: n/a
 
      05-04-2005
This is my first attempt at creating an ASP.Net app and first using the
datagrid. Seems pretty nice but there are some peculiarities I can't figure
out.

Basically, I want a 3 column datagrid. The first column will list some
files with the header text set to "File List." The second will be a button
column with the word "View" to display the file in the browser as html. The
third will also be a button column with the word "Download" to, you guessed
it, download the selected file.

My questions are:

1. I would like to bind the datagrid directly to
System.IO.Directory.GetFiles() which returns a string[]. The following
works to a point:

-------------------------
<snip>
<aspataGrid id="dgPickup" runat="server" AutoGenerateColumns="true"
style="Z-INDEX: 110; LEFT: 72px; POSITION: absolute; TOP: 504px">
<Columns>
<asp:ButtonColumn Text="View" HeaderText="View"/>
<asp:ButtonColumn Text="Download" HeaderText="Download"/>
</Columns>
</aspataGrid>
</snip>
--------------------------

The file list is in the third column and labelled "Item;" I would like it
to be the first column and labeled "File List." I have tried many ways to
create a bound column but cannot figure out how to bind it to the string[].


2. How do I determine what the user has selected? I can find the row
using the DataGridCommandEventArgs.Item.ItemIndex, .Cells(), and/or
..UniqueID but I don't know how to determine which column within the row
(view or download) that was selected.



Last, this is just a newbie asp question, if the user clicks a view button,
how do i redirect processing to another page passing it the name of the
file?


Thanks for any help,
bob


 
Reply With Quote
 
 
 
 
Elton W
Guest
Posts: n/a
 
      05-06-2005
Hi Bob,

Let's discuss your questions one by one

Q1:
You can use
datagrid.DataSource = System.IO.Directory.GetFiles(path);
datagrid.DataBind();
to bind data source.

Q2:

Normally the ItemCommand event handles any button click.
If you assign CommandName for a ButtonColumn, e.g.
<asp:ButtonColumn Text="View" HeaderText="View"
CommandName="View" />
then in ItemCommand you can find out clicked column by
if (e.CommandName.Equals("View"))
{
// View Column clicked
}

Q3:
You use e.Item.Cells[0].Text to get file name in the first
column. And redirect to a new page:
Response.Redirect("newpage.aspx?file=" + e.Item.Cells
[0].Text);


HTH

Elton Wang
http://www.velocityreviews.com/forums/(E-Mail Removed)

>-----Original Message-----
>This is my first attempt at creating an ASP.Net app and

first using the
>datagrid. Seems pretty nice but there are some

peculiarities I can't figure
>out.
>
>Basically, I want a 3 column datagrid. The first column

will list some
>files with the header text set to "File List." The

second will be a button
>column with the word "View" to display the file in the

browser as html. The
>third will also be a button column with the

word "Download" to, you guessed
>it, download the selected file.
>
>My questions are:
>
> 1. I would like to bind the datagrid directly to
>System.IO.Directory.GetFiles() which returns a string[].

The following
>works to a point:
>
>-------------------------
><snip>
> <aspataGrid id="dgPickup" runat="server"

AutoGenerateColumns="true"
> style="Z-INDEX: 110; LEFT: 72px; POSITION: absolute;

TOP: 504px">
> <Columns>
> <asp:ButtonColumn Text="View" HeaderText="View"/>
> <asp:ButtonColumn Text="Download"

HeaderText="Download"/>
> </Columns>
> </aspataGrid>
></snip>
>--------------------------
>
>The file list is in the third column and

labelled "Item;" I would like it
>to be the first column and labeled "File List." I have

tried many ways to
>create a bound column but cannot figure out how to bind

it to the string[].
>
>
> 2. How do I determine what the user has selected? I

can find the row
>using the DataGridCommandEventArgs.Item.ItemIndex, .Cells

(), and/or
>..UniqueID but I don't know how to determine which column

within the row
>(view or download) that was selected.
>
>
>
>Last, this is just a newbie asp question, if the user

clicks a view button,
>how do i redirect processing to another page passing it

the name of the
>file?
>
>
>Thanks for any help,
>bob
>
>
>.
>

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: How include a large array? Edward A. Falk C Programming 1 04-04-2013 08:07 PM
Differentiate between user caused events and script generated events jmpinchot@gmail.com Javascript 1 04-27-2007 03:05 AM
Differentiate between static and dynamic allocated objects Jo C++ 7 12-28-2006 11:19 AM
A Plea: Differentiate between Lens Chromatic Aberration and Sensor Chromatic Abbertion digiboy Digital Photography 3 12-06-2004 07:25 AM
How to differentiate between <XX></XX> and <XX/> with SAX dpj5754@yahoo.fr XML 13 08-11-2004 12:02 AM



Advertisments