Бизнес-логика не должна работать на вашем пользовательском интерфейсе. Вы получите большой шар того, что по существу заложено в вашем проекте.
Вам следует попытаться ознакомиться с концепцией, называемой «Разделение интересов»:
http://en.wikipedia.org/wiki/Separation_of_concerns
В этом случае вам действительно нужно что-то подобное для вашей бизнес-логики:
public static class MyBusinessLogicClass
{
public static string GetMyInfo()
{
return string.Empty;
}
}
И в вашем коде пользовательского интерфейса теперь у вас будет:
public void Page_Load(object sender, EventArgs e)
{
txtMyInfo.Text = MyBusinessLogicClass.GetMyInfo();
}
Это поможет вам избежать этой проблемы в целом.
Редактировать : Я также хотел бы отметить, что не имеет значения, какой шаблон вы используете (обратите внимание, в моем примере я не использую ничего, как MVC, MVP или «Шаблон Джо D» «Jour"). Достаточно просто разделить ваши проблемы.
Редактировать Редактировать : Хотя этот ответ не дает прямого ответа на ваш вопрос о том, как ссылаться на элементы управления извне пользовательского интерфейса, он косвенно отвечает на него, показывая вам способ избежать этого на все .