Business logic should not operate on your UI. You are going to end up with a big ball of what is essentially codebehind in your project.
You should try and familiarize yourself with a concept called "Separation of Concerns":
http://en.wikipedia.org/wiki/Separation_of_concerns
In this case, you'd really want something more like this for your business logic:
public static class MyBusinessLogicClass
{
public static string GetMyInfo()
{
return string.Empty;
}
}
And in your UI code, now you'd have:
public void Page_Load(object sender, EventArgs e)
{
txtMyInfo.Text = MyBusinessLogicClass.GetMyInfo();
}
It will help you avoid this issue altogether.
Edit: I'd also like to point out that it doesn't matter what pattern you use (notice in my example I'm not using anything like MVC, MVP, or "Joe's Pattern D'Jour"). Just separating your concerns is enough.
Edit Edit: Though this answer does not directly answer your question about how to reference controls from outside of the UI, it indirectly answers it by showing you a way to avoid having to do this at all.