Your text box control is being placed inside a content region inside a master page. With the INamingContainer interface, the IDs of your control are being renamed. ie Your TextBox's ID is something like
ctl00$MainContent_TextBox1
First you should be able to reference the controls by their name in the codebehind.
TextBox1.Text = "My text";
Or for a workaround, I will place the controls inside a placeholder control, then use the place holder's FindControl method to load up the correct control.
<asp:Content ...>
<asp:PlaceHolder id="ph" runat="server">
<asp:TextBox id="TextBox1" runat="server" />
</asp:PlaceHolder>
</asp:Content>
Then from CodeBehind:
TextBox textBox = ph.FindControl( "TextBox1" ) as TextBox;
bill