Wpf: получить тип класса Code-Behind от ElementName - PullRequest
1 голос
/ 16 августа 2010

давайте предположим, что у меня есть UserControl, подобный этому:

<UserControl x:Class="SomeNamespace.SomeClass">
    <Grid>
        <TextBlock Name="SampleTextBlock" />
    </Grid>
</Usercontrol>

Где-то в моем приложении я получил имя: SampleTextBlock.Я могу найти соответствующий Framework-элемент имени.Но как я могу найти класс Type-Behind из этого Framework-Element?

Это то, что я ищу в указанном примере:

Type usercontrolTypeOfElement = typeof(SomeClass);

Но как получитьSomeClass из каркасного элемента TextBlock с именем SampleTextBlock?

1 Ответ

2 голосов
/ 16 августа 2010

Вы имеете в виду что-то вроде этого:

FrameworkElement  current=textBlockInstance; // your TextBlock
while(null != current && !(current is UserControl)){
 current=current.Parent as FrameworkElement;
}
if(null != current){
    Type typeOfUserControl=current.GetType();
    MessageBox.Show(typeOfUserControl.Name);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...