Направленные события в Silverlight 3? - PullRequest
2 голосов
/ 05 сентября 2011

У меня есть элемент управления, внутри элемента управления, внутри элемента управления.

Вот так ..

QuizMaster -> Вопрос -> Ответы -> RadioButton

Когда одиня хочу, чтобы в Quizmaster была запущена функция AskNextQuestion ().

Как мне это сделать?

1 Ответ

1 голос
/ 05 сентября 2011

Вы бы создали событие в своем вложенном элементе управления, и ваш QuizMaster подписался бы на это событие.

В вашем Answers добавьте:

public static event Action<bool> IsAnswered;

и запускать это событие, когда вы выбираете RadioButton в его обработчике

public void OnRadioButtonSelected(object sender, SomeEventArgs e)
{
  if(IsAnswered != null)
    IsAnswered(true);
}

и в вашем QuizMaster Подписаться на это статическое событие:

public void SomeMethod()
{
  Answers.IsAnswered += new Action<bool>(Answers_IsAnsweredCompleted);
}

public void Answers_IsAnsweredCompleted(bool IsAsnwered)
{
  //call your method in QuizMaster
}
...