簡體   English   中英

如何從ascx.cs文件中的ascx文件的FormView中的文本框中獲取文本值

[英]How to get the text value from textbox within a FormView from ascx file in the ascx.cs file

我在ascx文件的FormView中有一個asp:文本框,如下所示:

<asp:FormView runat="server" ID="myFrmView">

    <asp:TextBox runat="server" ID="txtBox1" size="20" MaxLength="150" >

</FormView>

但是在代碼隱藏的ascx.cs文件中,我無法從文本框中檢索值

string name2 = Request.Form["txtBox1"];

如何獲得價值?

您不需要使用Request ,您應該可以直接在后面的代碼中訪問控件,請嘗試:

var value = txtBox1.Text;

好的,我找到了。

string value = (myFrmView.FindControl("txtBox1") as TextBox).Text;

問題是在FormView控件內部,並且沒有id。 myFrmView的ID

直接訪問控制:

string text = txtBox1.Text;

它是txtBox1.Text。 ASP.NET不會生成與您在標記文件ID中為其提供的相同名稱的HTML元素,並且引用Request.Form是支持服務器端控件的可靠對象模型的旁路。

如果您不能直接使用txtBox1.text訪問控件,那么我將檢查以確保您的ascx文件指向頂部<%@Page%>部分中文件后面的正確代碼。 應該有一個指向您的[file] .ascx.cs的CodeBehind屬性。

您可能還需要檢查以確保ascx.cs中聲明的類與designer.cs文件中的聲明的類匹配。 如果它們不匹配,則designer.cs中的部分類聲明將不匹配,並且您將沒有控件的屬性。

如果我手動重命名一些文件而忘記更新屬性后面的代碼,則會收到此錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM