Захват события нажатия кнопки во вложенных пользовательских элементах управления с повторителями - PullRequest
0 голосов
/ 03 января 2012

Ниже приведена моя страница и иерархия элементов управления.

Page
  UserControl 1
    <Repeater1> //Contents of UserControl 1
      UserControl 2
        <Accordion> //Contents of UserControl 2
        <Header/>
        <Content>
           <Repeater2/> //Repeater 2 is within Usercontrol 2
        <Button/>    // Button is within Usercontrol2, not Repeater 2
         </Accordion>
     </Repeater1>

Мне нужно иметь возможность обновить Повторитель2 при нажатии кнопки .

Любые указатели будут действительно полезны.

1 Ответ

0 голосов
/ 03 января 2012

Прикрепить событие к нажатию кнопки.Внутри этого события вы должны пройти через иерархию элементов управления, чтобы добраться до repeater2.

Button theButton = sender as Button;
UserControl2 parentControl = theButton.Parent as UserControl2;

Repeater theRepeater = null;
foreach(Control control in parentControl.Controls){
    theRepeater = control as Repeater;
    if(theRepeater != null) break;
}
...