Als neuer .net/C# -Web-Beginner stolperte ich immer, wenn ich FindControl benutzen wollte. Blam - flach auf meinem Gesicht. Hier ist mein aktuelles Findcontrol Problem:FindControl im DataList Editiermodus
ich eine ASPX-Seite und Formular habe, dann Ajax Updatepanel, im Innern gibt es meinen Datalist (DataList1), die eine EditItemTemplate hat:
<EditItemTemplate>
<asp:Label ID="thumbnailUploadLabel" runat="server" text="Upload a new thumbnail image:"/><br />
<asp:FileUpload ID="thumbnailImageUpload" runat="server" />
<asp:Button ID="thunbnailImageUploadButton" runat="server" Text="Upload Now" OnClick="thumbnailUpload"/><br />
</EditItemTemplate>
: dass die folgenden hat in meinem C# -Code hinter ich habe den OnClick-Code für das Fileupload-Objekt:
protected void thumbnailUpload(object s, EventArgs e)
{
if (thumbnailImageUpload.HasFile)
{
//get name of the file & upload
string imageName = thumbnailImageUpload.FileName;
thumbnailImageUpload.SaveAs(MapPath("../../images/merch_sm/" + imageName));
//let'em know that it worked (or didn't)
thumbnailUploadLabel.Text = "Image " + imageName + "has been uploaded.";
}
else
{
thumbnailUploadLabel.Text = "Please choose a thumbnail image to upload.";
}
So natürlich ich bin immer „Objektverweis nicht auf eine Instanz eines Objekts festgelegt“ für das Fileupload und dem Etikett.
Wie lautet die richtige Syntax, um diese Steuerelemente zu finden, bevor Sie sie im OnClick-Ereignis behandeln?
Der einzige Weg, Ive Findcontrol verwendet wird, ist so etwas wie:
Label thumbnailUploadLabel = DataList1.FindControl ("thumbnailUploadLabel") als Aufkleber;
Aber natürlich wirft dies den Fehler "Objektreferenz nicht auf eine Instanz eines Objekts eingestellt". Jede Hilfe wird sehr geschätzt.
(Ich habe auch den 'rekursiven' Code da draußen gesehen, der FindControl einfacher machen soll. Ha! Ich bin so grün bei C#, dass ich nicht einmal weiß, wie ich diese in mein Projekt einbauen soll.)
Vielen Dank an alle für einen Blick auf diese.
Hey Pankaj, danke für die Antwort. Spät ist besser als nie. Ich habe am Ende Code verwendet, der dem ähnlich ist, was Sie oben gepostet haben. Ja, ich habe den FileUpload innerhalb des UpdatePanel Problems entdeckt, also habe ich festgestellt, dass sie nicht gut zusammenspielen. Außerdem - ich habe NeatUpload von Dean Brettle (www.brettle.com) als sehr elegantes Multi-File-Upload-Objekt entdeckt - bei Bedarf entsteht ... – Doug