0

我有这个:

protected void Page_Load(object sender, EventArgs e)
{
   nome_Txt.Text = Profile.dados_pessoais.nome;
}


protected void save_Click(object sender, EventArgs e)
{
   Profile.dados_pessoais.nome = nome_Txt.Text;
}


如果Profile.dados_pessoais.nome是空的,nome_txt.Text也是空的。当我更改nome_Txt.Textteste例如,当我单击按钮时nome_Txt.Text为空。我究竟做错了什么?

4

1 回答 1

1

Page_Load事件在按钮单击事件之前运行,因此您始终将文本框分配为空值。

要解决此问题,请不要在回发时填充文本框:

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        nome_Txt.Text = Profile.dados_pessoais.nome;
    }
} 

正如评论中所述,您可能必须在更改配置文件后保存配置文件,否则下次加载页面时将不会保存:

protected void save_Click(object sender, EventArgs e)
{
    Profile.dados_pessoais.nome = nome_Txt.Text;
    Profile.Save()
}
于 2012-07-01T10:23:47.650 回答