473,387 Members | 1,925 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

Upload and dropdownlist from folder

Bob
I've made an upload function saving to a specific folder and dropdownlist
reading and listing files from the folder.
When I upload, the list is rendered a second time in the dropdownlist with
the uploaded file only being displayed in the second list. I would like to
avoid the dropdown being filled twice but my knowledge is still pretty
limited so I would be gratefull for help. Also if someone could perhaps
point me to how I make the just uploaded file the selected one in the
dropdownlist it would be perfect. It should be used later on in a Formview
inserting records into a db. But I need to get over this first issue before
I move on.

Here's some code I guess it's the Formview1_PreRender stuff that's the issue
it's logical that it renders it twice but what I should do instead I cannot
figure out.

<script language="VB" runat="server">
Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim FileUpLoad1 As FileUpload =
CType(FormView1.FindControl("FileUpLoad1"), FileUpload)
Dim Labeltxt As Object = FormView1.FindControl("Label1")
If FileUpLoad1.HasFile Then
'Uncomment this line to Save the uploaded file
FileUpLoad1.SaveAs("d:\web\pics\" & FileUpLoad1.FileName)
Labeltxt.Text = "Received " & FileUpLoad1.FileName & " Content
Type " & FileUpLoad1.PostedFile.ContentType & " Length " &
FileUpLoad1.PostedFile.ContentLength
Else
Labeltxt.Text = "No uploaded file"
End If

End Sub

Sub Formview1_PreRender(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles FormView1.PreRender

Dim di As New System.IO.DirectoryInfo("d:\web\pics\")
Dim fiArr As System.IO.FileInfo() = di.GetFiles()
Dim fi As System.IO.FileInfo
If FormView1.CurrentMode = FormViewMode.Edit Or
FormView1.CurrentMode = FormViewMode.Insert Then
Dim SectionDropDownList As DropDownList
SectionDropDownList = FormView1.FindControl("PicTextBox")
SectionDropDownList.Items.Insert(0, New ListItem("--- Choose
Picture ---"))

For Each fi In fiArr
SectionDropDownList.Items.Add("/pics/" + fi.Name)
Next fi

End If
End Sub
</script>
<form id="form1" runat="server">
<asp:FormView ID="FormView1" DefaultMode="Insert" runat="server">
<InsertItemTemplate>
<asp:DropDownList ID="PicTextBox" runat="server">
</asp:DropDownList>
<br />
<asp:Label id="LabelBilledeupload" runat="server" width="70px"
text="Upload billede:" />

<asp:FileUpLoad id="FileUpLoad1" runat="server" /> <asp:button
id="Button1"
runat="server"
text="Upload billede"
onclick="Button1_Click" /><br />
<asp:Label id="Label1" runat="server" />
<asp:LinkButton ID="InsertButton" runat="server"
CausesValidation="True" CommandName="Insert"
Text="Insert">
</asp:LinkButton>
<asp:LinkButton ID="InsertCancelButton" runat="server"
CausesValidation="False" CommandName="Cancel"
Text="Cancel">
</asp:LinkButton>
</InsertItemTemplate>
</asp:FormView>
</form>
Apr 28 '06 #1
1 2347
Use Page.IsPostback method to check if the page is loaded for first time or
not.

About selecting the file, iterate through the Dropdownlist's Listitem
collection and check for the file which u've uploaded, and use selectedindex
to set the item.

"Bob" <do*************@usa.net> wrote in message
news:eT**************@TK2MSFTNGP02.phx.gbl...
I've made an upload function saving to a specific folder and dropdownlist
reading and listing files from the folder.
When I upload, the list is rendered a second time in the dropdownlist with
the uploaded file only being displayed in the second list. I would like to
avoid the dropdown being filled twice but my knowledge is still pretty
limited so I would be gratefull for help. Also if someone could perhaps
point me to how I make the just uploaded file the selected one in the
dropdownlist it would be perfect. It should be used later on in a Formview
inserting records into a db. But I need to get over this first issue
before I move on.

Here's some code I guess it's the Formview1_PreRender stuff that's the
issue it's logical that it renders it twice but what I should do instead I
cannot figure out.

<script language="VB" runat="server">
Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim FileUpLoad1 As FileUpload =
CType(FormView1.FindControl("FileUpLoad1"), FileUpload)
Dim Labeltxt As Object = FormView1.FindControl("Label1")
If FileUpLoad1.HasFile Then
'Uncomment this line to Save the uploaded file
FileUpLoad1.SaveAs("d:\web\pics\" & FileUpLoad1.FileName)
Labeltxt.Text = "Received " & FileUpLoad1.FileName & " Content
Type " & FileUpLoad1.PostedFile.ContentType & " Length " &
FileUpLoad1.PostedFile.ContentLength
Else
Labeltxt.Text = "No uploaded file"
End If

End Sub

Sub Formview1_PreRender(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles FormView1.PreRender

Dim di As New System.IO.DirectoryInfo("d:\web\pics\")
Dim fiArr As System.IO.FileInfo() = di.GetFiles()
Dim fi As System.IO.FileInfo
If FormView1.CurrentMode = FormViewMode.Edit Or
FormView1.CurrentMode = FormViewMode.Insert Then
Dim SectionDropDownList As DropDownList
SectionDropDownList = FormView1.FindControl("PicTextBox")
SectionDropDownList.Items.Insert(0, New ListItem("--- Choose
Picture ---"))

For Each fi In fiArr
SectionDropDownList.Items.Add("/pics/" + fi.Name)
Next fi

End If
End Sub
</script>
<form id="form1" runat="server">
<asp:FormView ID="FormView1" DefaultMode="Insert" runat="server">
<InsertItemTemplate>
<asp:DropDownList ID="PicTextBox" runat="server">
</asp:DropDownList>
<br />
<asp:Label id="LabelBilledeupload" runat="server" width="70px"
text="Upload billede:" />

<asp:FileUpLoad id="FileUpLoad1" runat="server" /> <asp:button
id="Button1"
runat="server"
text="Upload billede"
onclick="Button1_Click" /><br />
<asp:Label id="Label1" runat="server" />
<asp:LinkButton ID="InsertButton" runat="server"
CausesValidation="True" CommandName="Insert"
Text="Insert">
</asp:LinkButton>
<asp:LinkButton ID="InsertCancelButton" runat="server"
CausesValidation="False" CommandName="Cancel"
Text="Cancel">
</asp:LinkButton>
</InsertItemTemplate>
</asp:FormView>
</form>

Apr 28 '06 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: John Smith | last post by:
Hi, I'm using the Persists ASPUpload component to upload files to various sub-directorys in the root of my website. I have written a short bit of code for this but it always uploads to the root...
5
by: tolgademirel | last post by:
I am creating a web application which needs to access data which resides on the client's computer. The data is a bunch of text files that are stored in a folder. I need all of those text files....
0
by: SEMIH DEMIR | last post by:
Sitelerden birinde verilen yabancı kaynakli bir scriptti duzenledim yanlız birseyin içinden bir turlu cıkamadım işin aslı ilk defa persistin upload componentini kullanacam yanlız suanki haliyle...
1
by: JimmySlam | last post by:
Hi I am triyingo to upload a file with ASPUPLOAD which works fine the only problem I need to change the folder where is going to be uploaded. I tried with folder =...
1
by: Alex | last post by:
I am having issues with a script to upload files from a client to a webserver. The problem is not with the actual upload but with where it uploads. The whole process is supposed to create a...
9
by: Wayne Smith | last post by:
I've come up against a major headache that I can't seem to find a solution for but I'm sure there must be a workaround and I would really be grateful of any help. I'm currently building a web...
21
KevinADC
by: KevinADC | last post by:
Note: You may skip to the end of the article if all you want is the perl code. Introduction Uploading files from a local computer to a remote web server has many useful purposes, the most...
4
by: Tony B | last post by:
I've moved an existing site (which I didn't write) from a apache/php/mysql host under windows to a linux apache/php/mysql host. I've sorted out most problems except one. There is an upload...
18
jhardman
by: jhardman | last post by:
Have you ever wanted to upload files through a form and thought, "I'd really like to use ASP, it surely has that capability, but the tutorial I used to learn ASP didn't mention how to do this."? ...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.