13. marts 2002 - 16:55
Der er
6 kommentarer og 1 løsning
Specified cast is not valid.
Jeg har min datalist, og prøver på at fange det der blev sendt med formen...: Sub Datalisten_Update(Sender As Object, E As DatalistCommandEventArgs) Dim EditTekst As HtmlInputText = E.Item.FindControl("efternavn") ... Jeg får fejlen "Specified cast is not valid." ved Dim EditTekst... Hmm?
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
13. marts 2002 - 17:55
#1
Er du sikker på den find-funktion returnerer en HtmlInputText? At dømme ud fra fejlen, så er det jo åbenbart det der går galt. Hvorfor ikke: Dim EditTekst As String = Efternavn.Text ? efternavn er vel initialiseret i koden med noget i stil med: <asp:input type=text id=efternavn runat="server"/>
13. marts 2002 - 22:41
#2
Jeg tror ikke at det virker med Efternavn.Text, fordi jeg kører det i en datalist, med en EditItemTemplate... jeg kan i hvertfald ikke få det til at virke :-( Nej jeg er ikke sikker på at den returnerer en HtmlInputText, men jeg har læst mig til det på GotDotNet... Det er næsten skrevet af, men det virker sq ik helt :-( riiimlig weird..
13. marts 2002 - 22:56
#3
Det er nu ikke weird. Det er meget sandsynligt at det er beta1 eller beta2 kode du sidder og skriver efter. Prøv at lave noget gettype().tostring (kan ikke lige præcis huske syntax'en), og så skrive ud hvilken type det er.
13. marts 2002 - 22:57
#4
kunne du evt. lige skrive den kode du benytter til at oprette dit EditTekst objekt med? Dvs. den der indgår i formen du sender fra. ...og du poster vel tilbage til den samme side ?
14. marts 2002 - 14:44
#5
Jeg kunne ikke rigtig finde ud af det der Gettype, så du får lige hele koden...: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Untitled</title> </head> <body> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.SqlClient" %> <script language="VB" runat="server"> Dim Conn As New SqlConnection("...") Sub Page_Load(Sender As Object, E As EventArgs) If Not Page.IsPostBack Lavliste() End if End sub Sub Lavliste() Dim DS As New DataSet Dim Comm As New SqlDataAdapter("SELECT * FROM test", Conn) Comm.Fill(DS, "test") Datalisten.Datasource = DS Datalisten.Databind() End sub Sub Datalisten_Edit(Sender As Object, E As DatalistCommandEventArgs) Datalisten.EditItemIndex = CInt(E.Item.ItemIndex) Lavliste() End sub Sub Datalisten_Update(Sender As Object, E As DatalistCommandEventArgs) Dim EditTekst As HtmlInputText = E.Item.FindControl("efternavn") ' Status.Text = "Opdateret - næsten da.. :-)" Datalisten.EditItemIndex = -1 Lavliste() End sub Sub Datalisten_Cancel(Sender As Object, E As DatalistCommandEventArgs) Datalisten.EditItemIndex = -1 Lavliste() End sub </script> <%-- <asp:label id="Status" align="center" runat="server"/><br><br> --%> <form runat="server"> <asp:datalist id="Datalisten" oneditcommand="Datalisten_Edit" onupdatecommand="Datalisten_Update" oncancelcommand="Datalisten_Cancel" repeatcolumns="2" align="center" runat="server"> <itemtemplate> <b>ID:</b> <%# DataBinder.Eval(Container.DataItem, "id") %><br> <b>Fornavn:</b> <%# DataBinder.Eval(Container.DataItem, "fornavn") %><br> <b>Efternavn:</b> <%# DataBinder.Eval(Container.DataItem, "efternavn") %><br> <b>Telefon:</b> <%# DataBinder.Eval(Container.DataItem, "telefon") %><br> <center><asp:linkbutton commandname="Edit" text="Rediger" runat="server"/></center><br><br> </itemtemplate> <edititemtemplate> <b>ID:</b> <%# DataBinder.Eval(Container.DataItem, "id") %><br> <b>Fornavn:</b> <asp:textbox id="fornavn" text='<%# DataBinder.Eval(Container.DataItem, "fornavn") %>' size="8" runat="server"/><br> <b>Efternavn:</b> <asp:textbox id="efternavn" text='<%# DataBinder.Eval(Container.DataItem, "efternavn") %>' size="8" runat="server"/><br> <b>Telefon:</b> <asp:textbox id="telefon" text='<%# DataBinder.Eval(Container.DataItem, "telefon") %>' size="8" runat="server"/><br><br> <center><asp:linkbutton commandname="Update" text="Opdater" runat="server"/> - <asp:linkbutton commandname="Cancel" text="Annuller" runat="server"/></center> </edititemtemplate> </asp:datalist> </form> </body> </html>
15. marts 2002 - 14:13
#6
Argh ingen forslag?! *S*
15. marts 2002 - 14:22
#7
Jeg fandt selv ud af det ved at ændre typen til Object, og så kalde den med EditTekst.Text
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.