其实是所有的Silverlight元素都继承于这个基类DependencyObject
使用可视化树(visual tree helper)浏览嵌套元素
这样可以做成清空所有TextBox的Text。
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 private void Clear(DependencyObject element) 2 { 3 //如果是TextBox,就想Text清空 4 TextBox txt = element as TextBox; 5 if (txt != null) txt.Text = ""; 6 // 检查嵌套的子元素 7 int children = VisualTreeHelper.GetChildrenCount(element); 8 for (int i = 0; i < children; i++) 9 { 10 DependencyObject child = VisualTreeHelper.GetChild(element, i); 11 Clear(child); 12 } 13 }
调用Clear()方法,传入的参数是你要处理的XAML标记的范围的最外层的那个对象。比如下面这个语句所处理的范围是整个页面:
Clear(this);