Доступ к родительскому элементу управления из представления Silverlight - PullRequest
1 голос
/ 21 апреля 2011

У меня есть родительская прокрутка в родительском UserControl в приложении Silverlight 4 Business, доступ к которому я хочу получить из View;Я хочу просто сказать, чтобы прокрутить наверх.Я пытался привести Parent к типу «MainPage», но, похоже, это не работает.Как мне это сделать?

Это не работает:

((MainPage)Parent).myScrollbar.ScrollToVerticalOffset(0);

Я получаю следующую ошибку:

Невозможно привести объект типа 'System.Windows.Controls.Frame 'для ввода' Project.MainPage '.

1 Ответ

3 голосов
/ 21 апреля 2011

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

[EDIT]

Итак, чтобы сделать то, что вам нужно, вот несколько решений.

Рекурсивная служебная функция для поиска родительского элемента управления: http://forums.silverlight.net/forums/t/55369.aspx

Вызывать событие на родительском элементе управления: http://forums.silverlight.net/forums/t/55458.aspx

Привязка текстового контекста: не уверен для элементов пользовательского интерфейса: Вызов родительского метода UserControl из дочернего UserControl в Silverlight

...