Click here to Skip to main content
15,893,668 members
Please Sign up or sign in to vote.
2.00/5 (2 votes)
See more:
I want to Display all the files from my Folder (~/Uploads/documents/) into the column "File":

C#
<asp:GridView ID="GridView1" CssClass="gridview"  GridLines="None" OnRowDataBound="RowDataBound" SelectedRowStyle-BackColor="#a8c066" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" DataKeyNames="ID" OnSelectedIndexChanged="GridView1_SelectedIndexChanged">
            <columns>
                <asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" ReadOnly="True" Visible="false"/>       
                <asp:BoundField DataField="File" HeaderText="File" SortExpression="File" /> 
                <asp:BoundField DataField="Folder" HeaderText="Folder" SortExpression="Folder" />                
            
            <SelectedRowStyle BackColor="#A8C066" />
        
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:strConn %>" SelectCommand="SELECT [ID], [Folder], [File] FROM [Files]">


What I have tried:

I tried to Google it, but i could not find something
Posted
Updated 21-Oct-16 11:37am
v2
Comments
[no name] 20-Oct-16 11:28am    
You googled "asp.net binding gridview column" and found nothing? I got 475000 results and you didn't get anything at all?

Check following articles if they help=
Display list of files from Server folder in ASP.Net GridView[^]
Displaying Files and Folders in a GridView - 4GuysFromRolla.com[^]
Get Filenames From Folder in Gridview Control in ASP.Net[^]

Try any one and if you face any problem, please let me know.
Hope, it helps :)
 
Share this answer
 
Here, I have build a datatable from the a directory and set that datatable to gridview as datasource
Design:
ASP.NET
<form id="form1" runat="server">
    <div>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    </div>
    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
    <br />
    <asp:GridView ID="GridView1" runat="server">
    </asp:GridView>
</form>


Code behind:
C#
protected void Button1_Click(object sender, EventArgs e)
{
    DataTable dt = new DataTable("Mydata");
    dt.Columns.Add("ID", typeof(int));
    dt.Columns.Add("File", typeof(string));
    dt.Columns.Add("Folder", typeof(string));
    dt.Columns["ID"].AutoIncrement = true;
    dt.Columns["ID"].AutoIncrementSeed = 1;
    dt.Columns["ID"].AutoIncrementStep = 1;

    ProcessDirectory(TextBox1.Text.Trim(), ref dt);
    GridView1.DataSource = dt;
    GridView1.DataBind();
}
public void ProcessDirectory(string targetDirectory, ref DataTable dt)
{
    string[] fileEntries = Directory.GetFiles(targetDirectory);
    foreach (string fileName in fileEntries)
    {
        FileInfo fi = new FileInfo(fileName);
        dt.Rows.Add(null, fi.Name, targetDirectory);
    }
    string[] subdirectoryEntries = Directory.GetDirectories(targetDirectory);
    foreach (string subdirectory in subdirectoryEntries)
    {
        ProcessDirectory(subdirectory, ref dt);
    }
}
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900