2015-01-15 2 views
0

У меня есть ссылка UserControl и вы хотите найти определенный дочерний элемент в C#. Это мой UserControl:Как найти определенный элемент в UserControl?

<UserControl .. > 
    <Viewbox> 
     <TextBlock>Text</Textblock> 
     <TextBlock>Text</Textblock> 
     <TextBlock>Text</Textblock> 
    </Viewbox> 
</UserControl> 

И в моем проекте C# У меня есть это:

UserControl userControl = new UserControl(); 

Мой вопрос: Как я могу найти каждый элемент TextBlock, не зная точную структуру дерева?


EDIT:

Просто решил сам.

Visual visual = (Visual)userControl.Content; 
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(visual); i++) 
{ 
    DependencyObject obj = VisualTreeHelper.GetChild(visual, i); 
} 
+0

http://meta.stackexchange.com/a/129632/165773 – gnat

ответ

1

Просто решил это сам. Вот фрагмент, если у кого-то возникает одна и та же проблема:

Visual visual = (Visual)userControl.Content; 
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(visual); i++) 
{ 
    DependencyObject obj = VisualTreeHelper.GetChild(visual, i); 
} 
Смежные вопросы