如何在代码隐藏中获取文本框的值

时间:2014-11-21 17:19:08

标签: c# asp.net

HTML:

<input type="text" runat="server" value="" placeholder="Search" id="searchB" class="styledTB searchB floatLeft" />

C#:

string strSMain;
protected void Page_Load(object sender, EventArgs e)
{
    tbSearchMain = (System.Web.UI.WebControls.TextBox)sender;

    strSMail = tbSearchMain.text; // gives me the following error: Exception Details: System.InvalidCastException: Unable to cast object of type 'ASP.site_master' to type 'System.Web.UI.WebControls.TextBox'.

    strSMain = searchB.text; //.Text is not an option for me
}

请帮我解决问题。

我正在创建一个Web应用程序。控件在MasterPage中。

2 个答案:

答案 0 :(得分:1)

使用此:

<input id="searchB" x:Name="searchB" type="text" runat="server" value="" placeholder="Search" class="styledTB searchB floatLeft" />

id属性用于客户端。 x:Name用于服务器端操作

答案 1 :(得分:1)

我不确定,但是没有文本框是Page_Load()函数的发件人。

检查DataContext属性及其工作原理。

http://www.wpf-tutorial.com/data-binding/using-the-datacontext/