Windows Phone 7 - доступ к элементу управления MainPage из класса - PullRequest
1 голос
/ 20 июня 2011

Мне нужно получить доступ к управлению MainPage.xaml.cs из другого класса.Как я могу получить к нему доступ?

1 Ответ

0 голосов
/ 20 июня 2011

вопрос почему? Есть несколько подходов, в зависимости от вашей архитектуры:

Первое, что вы можете сделать, это создать синглтон MainPage. Это имеет смысл, потому что в реальности у вас есть только одна главная страница, но мне не нравятся синглтоны, и это связывает ваши компоненты, и ваш дизайн становится сложным для модульного тестирования.

Кроме того, вы можете передать интерфейс вашей MainPage в ваш класс. Если вы только передадите интерфейс, у вас будет шанс выполнить модульное тестирование без особых проблем. Как то так:

public interface IMainView
{
   void MethodOnMainPage();
}

public class MainPage : IMainView
{
}

public class MyClass 
{
   private IMainView _view;

   public MyClass(IMainView view)
   {
      _view = view;
   }

   private void SomeEventHappened() 
   {
      _view.MethodOnMainPage();
   }
}
...