简体   繁体   English

如何在UserControl中找到特定的元素?

[英]How to find a specific Element in a UserControl?

I have a referenced UserControl and want to find a specific child element in C#. 我有一个引用的UserControl,想在C#中找到特定的子元素。 This is my UserControl: 这是我的UserControl:

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

And in my C# project I've got this: 在我的C#项目中,我得到了:

UserControl userControl = new UserControl();

My question is: How can I find every element TextBlock without knowing the exact tree structure? 我的问题是:如何在不知道确切的树结构的情况下找到每个元素TextBlock?


EDIT: 编辑:

Just solved it myself. 我自己解决了。

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

Just solved it myself. 我自己解决了。 Here's a snippet if someone comes across the same problem: 如果有人遇到相同的问题,这是一个片段:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM