You can just have a public property on Form2 that Form1 will access when it needs to see the value. Something like this:
using(Form2 form2 = new Form2())
{
if(form2.ShowDialog() == DialogResult.OK)
{
form1Logger(form2.NumberWritten);
}
}
The property can be something as simple as this:
class Form2
{
public String NumberWritten
{
get{return textBox.Value;}
}
}