Hey guys..
Jeg har virkelig fået grå hår (og jeg er kun 27), over at jeg
ikke kan finde en UploadFile control i min Gridview
EditItemTemplate i cs'en :(
Jeg har prævet ALT muligt, søgt på nettet og fundet noget jeg
troede ville virke, men intet fungere for mig.
Her er hvad jeg har skrevet og som jeg føler bare mangler et
eller andet simpelt, så det er det jeg håber nogen herinde kan
hjælpe med, for jeg er virkelig ved at gå ud af mit gode skind
over det her...
ASP.NET------------------------------------------------------
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AutoGenerateColumns="False" CellSpacing="5"
CssClass="text" DataKeyNames="ID"
DataSourceID="LinqNyhederEdit" GridLines="None">
<Columns>
<asp:CommandField ShowDeleteButton="True"
ShowEditButton="True"
DeleteText="Slet"
EditText="Redigere&nbsp;&nbsp;" >
<ItemStyle VerticalAlign="Middle" Width="100px"
/>
</asp:CommandField>
<asp:BoundField DataField="Date"
DataFormatString="{0:d}" HeaderText="Date"
SortExpression="Date" >
<ControlStyle Width="100px" />
<ItemStyle VerticalAlign="Top" Width="80px" />
</asp:BoundField>
<asp:BoundField DataField="Topic" HeaderText="Topic"
SortExpression="Topic" >
<ItemStyle VerticalAlign="Top" Width="170px" />
</asp:BoundField>
<asp:TemplateField HeaderText="Description"
SortExpression="Description">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server"
Text='<%# Bind("Description") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server"
Text='<%# Bind("Description") %>'></asp:Label>
</ItemTemplate>
<ItemStyle VerticalAlign="Top" Width="400px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="PicUrl"
SortExpression="PicUrl">
<EditItemTemplate>
<asp:TextBox ID="tbUploadUpdate"
runat="server" Text='<%# Bind("PicUrl") %>'></asp:TextBox>
<asp:FileUpload ID="FileUpload2"
runat="server" ></asp:FileUpload>
<asp:Button
ID="btnUploadUpdate" runat="server"
onclick="btnUploadUpdate_Click" />
</EditItemTemplate>
<ItemTemplate>
<asp:Image ID="img" runat="server"
ImageUrl='<%# Bind("PicUrl", "~/Images/Pictures/Nyheder/{0}") %>'
Height="176px" Width="110px"></asp:Image>
</ItemTemplate>
<ItemStyle VerticalAlign="Top" />
</asp:TemplateField>
</Columns>
</asp:GridView>
C#----------------------------------------------------------
protected void btnUploadUpdate_Click(object sender, EventArgs
e)
{
foreach (GridViewRow row in GridView1.Rows)
{
FileUpload FileUpload2 =
this.FindControl("GridView1$FileUpload2") as FileUpload;
FileUpload fileupload2 =
(FileUpload)this.GridView1.FindControl("FileUpload2");
TextBox tbuploadupdate =
(TextBox)FindControl("tbUploadUpdate");
string ImageFolder = "Images/Pictures/Nyheder";
string savePath;
string saveFile;
if (FileUpload2.HasFile)
{
try
{
savePath =
Path.Combine(Request.PhysicalApplicationPath, ImageFolder);
saveFile = Path.Combine(savePath,
fileupload2.FileName);
FileUpload2.SaveAs(saveFile);
}
catch (Exception exUpload)
{
Status.Text = exUpload.Message;
}
tbuploadupdate.Text = fileupload2.FileName;
}
else
{
Status.Text = "ØV!";
}
}
}
stop---------------------------------------------------------
Som i kan se har jeg prøvet lidt forskelligt med findcontrol, men
ja, intet virker, den skriver "NullReferanceExeption was
unhandled by user", så ja den kan jo åbenbart ikke finde
FileUpload2...
HJÆLP! PLEASE!
PS. Har læst at man ikke skal fylde indlæget med en masse kode,
men har ikke rigtig noget andet valg.
På Forhånd tak.
Johnny
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! =>
http://www.html.dk/tutorials