博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
遍历特定类型子对象
阅读量:7113 次
发布时间:2019-06-28

本文共 766 字,大约阅读时间需要 2 分钟。

///
 
<summary>
        
///
 遍历特定类型子对象
        
///
 
</summary>
        
///
 
<typeparam name="T"></typeparam>
        
///
 
<param name="parent"></param>
        
///
 
<returns></returns>
        
public IEnumerable<T> FindChildren<T>(DependencyObject parent) 
where T : 
class
        {
            
var count = VisualTreeHelper.GetChildrenCount(parent);
            
if (count > 
0)
            {
                
for (
var i = 
0; i < count; i++)
                {
                    
var child = VisualTreeHelper.GetChild(parent, i);
                    
var t = child 
as T;
                    
if (t != 
null)
                        
yield 
return t;
                    
var children = FindChildren<T>(child);
                    
foreach (
var item 
in children)
                        
yield 
return item;
                }
            }
        }
void ClearAllTextBox()
        {
            IEnumerable<TextBox> AllTextBox = FindChildren<TextBox>(
this);
            
foreach (
var textbox 
in AllTextBox)
            {
                textbox.ClearValue(TextBox.TextProperty);
            }
        }

转载于:https://www.cnblogs.com/arongbest/archive/2011/10/26/2224928.html

你可能感兴趣的文章
mybatis-generator自动生成dao,mapping,model
查看>>
阿里云服务器的坑=====部署EF+MVC
查看>>
docker学习笔记17:Dockerfile 指令 ONBUILD介绍
查看>>
MVC5 网站开发之七 用户功能 1、角色的后台管理
查看>>
To Miss Our Children Time(dp)
查看>>
VisualSVN Server和Subversion的联系
查看>>
Gossip算法
查看>>
单调栈小结
查看>>
将Tp-link无线路由器桥接到Dlink无线路由器上
查看>>
Div和Span标签显示与隐藏
查看>>
highcharts 结合phantomjs纯后台生成图片
查看>>
Eclipse上GIT插件EGIT使用手册之十二_重置功能
查看>>
error: ‘for’ loop initial declarations are only allowed in C99 mode
查看>>
MySQL和Oracle开发差异
查看>>
DevExpress的安装方法与破解教程【转】
查看>>
判断浏览器类型的脚本
查看>>
手机市场硝烟弥漫,心系天下三星W2017价格上扬仍一机难求
查看>>
蔚来汽车更新招股书:IPO后李斌将拥有48%投票权
查看>>
快手成央视春晚官方合作伙伴 助力春晚传播
查看>>
春运服务“铁骑”返乡8年女交警:寒风中随车返乡孩子少了
查看>>