wpf中获取页面中所有Border的控件
时间: 2024-05-02 07:18:17 浏览: 119
历遍页面所有控件并获取其名称
可以使用VisualTreeHelper类的GetChild方法遍历页面中所有控件,找到类型为Border的控件。例如:
```csharp
private List<Border> GetAllBorders(DependencyObject parent)
{
List<Border> borders = new List<Border>();
int childCount = VisualTreeHelper.GetChildrenCount(parent);
for (int i = 0; i < childCount; i++)
{
DependencyObject child = VisualTreeHelper.GetChild(parent, i);
if (child is Border border)
{
borders.Add(border);
}
else
{
borders.AddRange(GetAllBorders(child));
}
}
return borders;
}
// 调用方法
List<Border> borders = GetAllBorders(this); // this代表当前页面的根元素
```
阅读全文