|
web
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Two questions: datagrid with string[] and how to differentiate between columnsdatagrid. 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> <asp:DataGrid 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> </asp:DataGrid> </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 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 elton_w***@hotmail.com >-----Original Message----- first using the >This is my first attempt at creating an ASP.Net app and >datagrid. Seems pretty nice but there are some peculiarities I can't figure >out. will list some > >Basically, I want a 3 column datagrid. The first column >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. TOP: 504px">> >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> > <asp:DataGrid id="dgPickup" runat="server" AutoGenerateColumns="true" > style="Z-INDEX: 110; LEFT: 72px; POSITION: absolute; > <Columns> HeaderText="Download"/>> <asp:ButtonColumn Text="View" HeaderText="View"/> > <asp:ButtonColumn Text="Download" > </Columns> labelled "Item;" I would like it > </asp:DataGrid> ></snip> >-------------------------- > >The file list is in the third column and >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[].> can find the row > > 2. How do I determine what the user has selected? I >using the DataGridCommandEventArgs.Item.ItemIndex, .Cells within the row (), and/or >..UniqueID but I don't know how to determine which column >(view or download) that was selected. clicks a view button, > > > >Last, this is just a newbie asp question, if the user >how do i redirect processing to another page passing it the name of the Show quoteHide quote >file? > > >Thanks for any help, >bob > > >. >
ASP.NET - How to bind() a dataset to a datagrid using javascript from the client
Pop-up Message Box binding ArrayLists to DataGrids-- how to name the columns? Subclassing a DataGrid control Newbie: Datagrid Comes Up Blank?!? trying to display header only Wrong window gets the content HOWTO: Bring that row back into focus ... using datagrid ItemStyle question |
|||||||||||||||||||||||