private TreeViewItem FindTreeItem(TreeViewItem item, Func<TreeViewItem, bool> compare)
{
if (item == null)
{
return null;
}
var pd = compare?.Invoke(item);//执行比较
if (pd.HasValue && pd.Value)
{
return item;
}
if (item.ItemContainerGenerator.Status != System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
item.UpdateLayout();
}
for (int i = 0, length = item.Items.Count; i < length; i++)
{
var treeitem = FindTreeItem(item.ItemContainerGenerator.ContainerFromIndex(i) as TreeViewItem, compare);
if (treeitem != null)
{
return treeitem;
}
}
return null;
}

备份一个迭代查找TreeViewItem的辅助函数的更多相关文章

  1. 【Python实践-5】使用迭代查找一个list中最小和最大值

    # -*- coding: utf-8 -*- #使用迭代查找一个list中最小和最大值,并返回一个tuple #遍历list,找到最小值 def findMinAndMax(L): if L==[] ...

  2. 请使用迭代查找一个list中最小和最大值,并返回一个tuple

    如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration). 在Python中,迭代是通过for ... in来完成的,而很多语 ...

  3. python 练习题:使用迭代查找一个list中最小和最大值,并返回一个tuple

    # -*- coding: utf-8 -*- # 请使用迭代查找一个list中最小和最大值,并返回一个tuple from collections import Iterable def findM ...

  4. python 请使用迭代查找一个list中最小和最大值,并返回一个tuple

    请使用迭代查找一个list中最小和最大值,并返回一个tuple: 要注意返回的值的类型是不是tuple def findMinAndMax(L): min=0 max=0 if len(L)==0: ...

  5. shell实现自动备份整个数据库,一个库备份一个文件

    自动实现备份整个数据库 实现一个库备份一个文件 实现排除不需要备份的库 实现备份成压缩文件 实现定义保留多少天的备份文件 核心代码 #!/bin/bash #set -x ############## ...

  6. C#备份一个文件到指定的文件夹里面

    一开始我的想法是这样的: //在控制台里面操作 static void Main(string[] args) { //backup( @"D:\gg\config.xml", @ ...

  7. Linux中一个快速查找文件和目录的命令

    功能介绍: locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,值得注意的是:版本不同,会有所不 ...

  8. Django模板如何用一个变量查找字典值

    mydict = {"key1":"value1", "key2":"value2"} 在Django模板中查找字典值的 ...

  9. SQL语句:一个表,通过一个字段查找另外一个字段不相同值

    select * from [dbo].[Sys_MemberKey] a where exists(select * from [Sys_MemberKey] b where a.FMachineC ...

  10. 自己写的一个nodejs查找文件模块-node-find-all-files

    最近在折腾着用node-webkit搭建一个工具,其中要查找路径下的所有文件然后再进行压缩等操作,于是进写了这样的一个模块.代码如下: /* 输入目录找出目录下的所有文件,包括文件夹 */ /* 依赖 ...

随机推荐

  1. 两个半成品的ORM

    只要是有点结构化的思想,不可能项目里一个sqlHelper 满天飞 到处写 ,最终你的c#代码还是得返回一个Class 才好操作,sqlhelper, datatable这种东西也只是临时将就一下,稍 ...

  2. Vmware共享文件夹安装设置方法(window与Linux使用共享文件夹)

    Vmware共享文件夹安装设置方法 注意:如果按照了工具,设置了共享文件夹,Linux下面还是没有的话,可以运行下面的命令,就会加载共享文件夹了 vmhgfs-fuse .host:/ /mnt/hg ...

  3. Django项目实战:从安装到启动服务

    Django项目实战:从安装到启动服务 安装Django 首先,确保你已经安装了 Python 和 pip.然后,使用以下命令来安装 Django : pip install django 安装成功后 ...

  4. Q:ssh远程连接慢的原因排查

    连接linux服务器一般都是使用SSH远程连接的方式.有时,SSH连接速度很慢,大约30s左右,但是ping时一切正常. 问题原因 1.server的sshd会去DNS查找访问的client ip的h ...

  5. Doris端口列表

    实例名称 端口名称 默认端口 通讯方向 说明 BE be_port 9060 FE --> BE BE 上 thrift server 的端口,用于接收来自 FE 的请求 BE webserve ...

  6. 【SqlServer主从复制】Sql Server主从复制【完美实践】

    目录 [0]环境信息 [0.1]拓扑架构环境 [0.2]实例名与服务器名检查 [1]前置环境配置 [1.1]修改hosts(配置DNS) [1.2]修改防火墙(网络连通性) [1.3]建立复制账户,测 ...

  7. VS2019 找不到资产文件 “xxxx\obj\project.assets.json”运行NuGet包还原以生成此文件

    参考地址:https://blog.csdn.net/weixin_42835409/article/details/107033059 下载 log4net 源码打开,编译报错: 严重性 代码 说明 ...

  8. kubesphere应用系列(一)部署NET8API

    一.准备工作 1.kubesphere 2.harbor 3.net8 二.创建API应用 1.创建api应用 1.1使用命令创建应用 dotnet new webapi -n YourApiAppN ...

  9. 高效开发助手:深入了解Hutool工具库

    一.关于Hutool 1.1 简介 Hutool​是一个功能丰富且易用的Java工具库,通过诸多实用工具类的使用,旨在帮助开发者快速.便捷地完成各类开发任务. 这些封装的工具涵盖了字符串.数字.集合. ...

  10. mybatis - [11] ResultMap结果集映射

    题记部分 用于处理数据库中的字段名和Java实体类中的属性名不一致的问题 数据库中的字段为id,name,pwd.Java实体类属性为id,name,password. 在映射文件中select标签使 ...