ho un problema stupido ma che non riesco a capire

ho una text box che in page load carica il contenuto di un file.tx

e fin qui tutto bene

ma se salvo il contenuto lanciando da button una procedura questa non recupera il valore modificato ma salva quello che aveva in memoria

metto un podi codice

protected void Page_Load(object sender, EventArgs e)
{

StreamReader sw = new StreamReader(Server.MapPath("mail.txt"));

string line;
line = sw.ReadToEnd();
TextBox1.Text = line;
sw.Close();


}


protected void saveMail(object sender, ImageClickEventArgs e)
{
StreamWriter sw = new StreamWriter(Server.MapPath("mail.txt"), false, System.Text.Encoding.Default);
sw.WriteLine(TextBox1.Text);
sw.Flush();

sw.Close();
}


qualcuno sa aiutarmi