jag har ett väldigt problem med Visual Studio .NET 2003 Academic Version. När jag har gjort sidlayouten och ska göra själva programmeringen så får jag fel för de komponenter jag hänvisar till som jag har lagt till på sidan. Detta är koden i .VB-filen: Detta var egendomligt. Jag stängde projektet och öppnade det igen och nu fungerar det. Men vad kan ah varit fel, jag vill ju inte behöva stänga och öppna det hela tiden. Jag hade sparat aspx-filen innan jga började på .VB-filen. Felet beror förmodligen på att du deklarerat Du har helt rätt Patrik, jag döpte om dem i efterhand. Jag tackar och bockar ännu en gång för hjälpen...:)VS .NET?
Jag har nu till exempel gjort en sida som man ska kunna skicka E-post ifrån, där har jag gjort en textbox så här. <asp:textbox id="txtSender" Runat="Server" /> När jag sedan ska hämta namnet i .VB-filen får jag bara fel ( den grymma blåa linjen). Där har jag skrivit så här:
objMailMessage.From = txtSender.Text
Alla textboxar, knappar med mera blir likadant. Vad är det som är fel?Sv: VS .NET?
Imports System.Web.Mail
Public Class Contact
Inherits System.Web.UI.Page
#Region " Web Form Designer Generated Code "
'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Protected WithEvents Sender As System.Web.UI.WebControls.TextBox
Protected WithEvents Subject As System.Web.UI.WebControls.TextBox
Protected WithEvents Message As System.Web.UI.WebControls.TextBox
Protected WithEvents SendMail As System.Web.UI.WebControls.Button
'NOTE: The following placeholder declaration is required by the Web Form Designer.
'Do not delete or move it.
Private designerPlaceholderDeclaration As System.Object
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub
#End Region
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here
End Sub
Public Sub SendMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SendMail.Click
Dim objMailMessage As MailMessage
objMailMessage = New MailMessage
objMailMessage.From = txtsender.Text
objMailMessage.To = "info@mydomän.se"
objMailMessage.Subject = txtSubject.Text
objMailMessage.Body = txtMessage.Text
SmtpMail.Send(objMailMessage)
End Sub
End Class
<b>Detta är koden från HTML-sidan...(Tar bara med den del som innehåller serverkontrollerna) det jag får fel på är txtSender.Text, txtSubject.Text och txtMessage.Text.</b>
<td><asp:textbox id="txtSender" Runat="Server" /></td>
</tr>
<tr> <td class="RegularText">Ämne *</td>
<td><asp:textbox id="txtSubject" runat="Server" /></td>
</tr>
<tr>
<td valign="top" Class="RegularText">
Meddelande *</td>
<td valign="top">
<asp:textbox id="txtMessage" TextMode="MultiLine" Rows="6" runat="Server" />
<br>
<asp:button id="btnSendMail" runat="Server" Text="Skicka" /></td>
</tr>Sv: VS .NET?
Sv: VS .NET?
<code>
Protected WithEvents Sender As System.Web.UI.WebControls.TextBox
Protected WithEvents Subject As System.Web.UI.WebControls.TextBox
Protected WithEvents Message As System.Web.UI.WebControls.TextBox
Protected WithEvents SendMail As System.Web.UI.WebControls.Button
</code>
men dina kontroller heter txtSender, txtSubject, txtMessage och btnSendMail.
När du startade om projektet, eller om du gick mellan kod och designläge, så gjorde VS den rätta deklarationen åt dig.
Om du inte har gjort ovanstående deklarationer själv utan VS gjort dem åt dig när du dragit in kontrollerna så kan jag bara förklara det med att du döpt om dem efteråt eller nåt.Sv: VS .NET?