FindControl TextBox,它没有得到良好的价值Sharepoint

本文关键字:Sharepoint TextBox FindControl | 更新日期: 2023-09-27 18:36:04

在我的asp页面中,我得到了:

<asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server">
<asp:DropDownList ID="_SCP_ddlStatutDelais" runat="server"></asp:DropDownList>
<asp:TextBox ID="_SCP_tbTypeMiseProduction" Rows="3" runat="server" TextMode="MultiLine"></asp:TextBox>
<asp:Button ID="_btSend" runat="server" Text="Envoyer" CssClass="ms-ButtonHeightWidth"
                                    onclick="_btSend_Click"/>
</asp:Content>

然后,在我的代码隐藏中,我从数据库中获取值以在我的Page_Load中提供我的文本框和 DDL,它可以工作。

然后,我想使用用户修改的值更新我的数据库,所以我尝试获取文本框中的文本,但我只能从数据库中获取我输入的文本,而myTextBox.Text忽略用户修改的文本。

代码隐藏:

protected void _btSend_Click(object sender, EventArgs e)
{
Control context = this.Page.Master.FindControl("PlaceHolderMain");
//Informations Database Connection etc...
reflector.Set(d[fieldtomap],rootTypeDescriptor, ref instance, ((TextBox)(context.FindControl(nodeName))).Text);
//Submit update to database
}

例如,如果我从我的数据库中获取:"测试",我会输入我的文本框"测试"。然后,用户修改此值,然后使用按钮((文本框)(上下文)进行验证。FindControl(nodeName)))。文本始终包含"测试",并忽略用户的修改。

FindControl TextBox,它没有得到良好的价值Sharepoint

绑定数据时是否检查 Page.IsPostback? 您应该只在初始页面加载时绑定,否则,更改将被覆盖 - 就像您正在经历的那样。