you can limit to PDF files only by changing Dim files() As String =
Directory.GetFiles(folder) to Dim files() As String =
Directory.GetFiles(folder, "*.pdf").

For your error, try stepping through the code in debug mode and see
what happens.

On 11 Nov, 06:17, nag <[EMAIL PROTECTED]> wrote:
> hi
> i have done for listing of files from folder and provided option to
> delete.but i want list only pdf files can any one help me. and another
> problem is when i delete selected file  following errors come.
>
> Index was out of range. Must be non-negative and less than the size of
> the collection.
> Parameter name: index
>
> here is my code
>
> <fieldset style="width: 804px" align="center">
>
>     <legend>Uploading and Deleting Files via Form</legend>
>     <div align="left" style="text-align: center">
>     <form id="form1" runat="server">
>         <asp:Label ID="labelStatus" runat="server"></asp:Label><br />
>         <asp:FileUpload ID="FileUpload1" runat="server" /><br />
>         <asp:Button ID="Button1" runat="server" Text="Upload"
> OnClick="Button1_Click" /><br /><br />
>
>         <asp:GridView ID="GridView1" runat="server" DataSource="<%#
> GetUploadList() %>" OnRowDeleting="GridView1_RowDeleting"
> AutoGenerateColumns="False" >
>         <Columns>
>         <asp:TemplateField HeaderText="Uploaded File">
>             <ItemStyle HorizontalAlign="Center" Width="70%" />
>             <ItemTemplate>
>             <asp:HyperLink
>             ID="FileLink"
>             NavigateUrl='<%# "/vsjayanti/subpage/" +
> Container.DataItem.ToString() %>'
>             Text='<%# Container.DataItem.ToString() %>'
>             runat="server" Target="_blank" />
>             </ItemTemplate>
>         </asp:TemplateField>
>         <asp:TemplateField HeaderText="Delete?">
>             <ItemStyle HorizontalAlign="Center" Width="30%" />
>             <ItemTemplate>
>             <asp:LinkButton ID="LinkButton1" runat="server"
> CausesValidation="False" CommandName="Delete"
>                     OnClientClick='return confirm("Are you sure you
> want to delete this entry?");'
>                     Text="Delete?" />
>             </ItemTemplate>
>         </asp:TemplateField>
>         </Columns>
>         </asp:GridView>
>     </form>
>        </div>
>     </fieldset>
>
> Imports System.IO
>
> Partial Class _Default
>     Inherits System.Web.UI.Page
>
>     Protected Sub Page_Load(ByVal sender As Object, ByVal e As
> System.EventArgs) Handles Me.Load
>
>     End Sub
>
>     Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
>         MyBase.OnLoad(e)
>         If (Not IsPostBack) Then
>             GridView1.DataBind()
>         End If
>     End Sub
>
>     Protected Function GetUploadList() As String()
>         Dim folder As String = Server.MapPath("/subpage")
>
>         Dim files() As String = Directory.GetFiles(folder)
>         Dim fileNames(files.Length - 1) As String
>         Array.Sort(files)
>
>         For i As Integer = 0 To files.Length - 1
>             fileNames(i) = Path.GetFileName(files(i))
>         Next i
>
>         Return fileNames
>     End Function
>
>     Protected Sub UploadThisFile(ByVal upload As FileUpload)
>         If upload.HasFile Then
>             Dim theFileName As String = Path.Combine(Server.MapPath("/
> subpage"), upload.FileName)
>             upload.SaveAs(theFileName)
>             labelStatus.Text = "<b>File has been uploaded.</b>"
>         End If
>     End Sub
>
>     Protected Sub GridView1_RowDeleting(ByVal sender As Object, ByVal
> e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles
> GridView1.RowDeleting
>         e.Cancel = True
>         Dim fileName As String =
> (CType(GridView1.Rows(e.RowIndex).FindControl("FileLink"),
> HyperLink)).Text
>
>         fileName = Path.Combine(Server.MapPath("/subpage"), fileName)
>         File.Delete(fileName)
>         GridView1.DataBind()
>     End Sub
>
>     Protected Sub Button1_Click(ByVal sender As Object, ByVal e As
> System.EventArgs) Handles Button1.Click
>         UploadThisFile(FileUpload1)
>         GridView1.DataBind()
>     End Sub
> End Class

Reply via email to