ASP.Net 不知道文本框

ASP.Net doesn't know textbox

我在 asp.net 中创建了一个表单,用户可以在其中插入电子邮件地址主题和消息,然后点击发送。

发送的邮件带有一些虚假输入

我正在尝试从文本框中获取输入,但出于某种原因我不能。

这是我在 asp 网站上所做的:

<form id="contact-form"  >
                <div class="row">
                    <div class="col-md-10">
                        <div class="form-group">
                            <asp:Label ID="Label1" runat="server" Text="Name" CssClass="labelnew"></asp:Label>
                            <asp:TextBox ID="TextBox1" runat="server" CssClass="form-control" placeholder="Enter name"  required="required"></asp:TextBox>

                        </div>

                        <div class="form-group">
                            <asp:Label ID="Label2" runat="server" Text="Your Email Address" CssClass="labelnew"></asp:Label>
                            <asp:TextBox ID="txtemail" runat="server" CssClass="form-control" placeholder="Enter email" required="required"></asp:TextBox>

                    </div>

                          <div class="form-group">
                            <asp:Label ID="lblmsg" runat="server" Text="Message" CssClass="labelnew"></asp:Label>
                              <asp:TextBox ID="TextBox2" runat="server" placeholder="Message" CssClass="form-control"  TextMode="MultiLine" Rows="9" Columns="25" required="required"></asp:TextBox>
                           </div>


                    <div class="col-md-12">

<asp:Button ID="Button1" runat="server" Text="Send Message"  onclick="Button1_Click" 
                            BackColor="#0066CC" Font-Names="Aharoni" ForeColor="White" 
                            ></asp:Button>
                    </div>
                </div>
                </div>
                </form>

这是我在后面的 c# 代码中所做的:

protected void Button1_Click(object sender, EventArgs e)
{
MailMessage mailMessage = new MailMessage();
mailMessage.To.Add("mymail@ebay.com");
mailMessage.From = new MailAddress("a"); 
mailMessage.Subject = "ya";
mailMessage.Body = "ya";
    SmtpClient smtpcl = new SmtpClient("mysmtp");
smtpcl.Send(mailMessage);
   string a= TextBox1.text;
 }

出于某种原因,它似乎不认识 TextBox1,知道为什么吗?

除了标签中的 runat="server".. 请检查以下... 1.AutoEventWireup="true"。如果未设置为不正确,则需要在后面的代码中显式设置。

<%@ Page Language="vb" AutoEventWireup="true" 
    CodeBehind="YourPageName.aspx.vb" Inherits="YourNamespace.YourPageName" %>
  1. 是否部分 class?

    部分 Class YourPageName 继承 System.Web.UI.Page

    结束Class