public void ThrseReloadTreeView(TreeView tv, DataTable dt)
{
var newList = new List<TreeNode>();
for (int i = 0; i < dt.Rows.Count; i++)
{
TreeNode Inode = new TreeNode();
Inode.ImageIndex = 0;
Inode.Text = dt.Rows[i]["NO"].ToString();
newList.Add(Inode);
}
var oldList = tv.Nodes.Cast<TreeNode>().ToList();//老的节点数据源
//是否改变
bool itemChanged = false;
//是否个数相同
bool isSameCount = newList.Count == oldList.Count;
if (isSameCount) //如果个数相同:比较项是否变化了
{
//久数据源判断新数据源
//1个数有变化:是新增了车还是删除了车
foreach (var item in oldList)
{
if (!newList.Any(x => x.Text == item.Text)
解决treeview绑定节点多少频繁刷新可以使用有变化时才绑定
最新推荐文章于 2021-03-13 21:26:04 发布
本文介绍如何在TreeView控件中提高性能,通过只在数据发生改变时才进行节点绑定,避免不必要的频繁刷新,从而提升用户体验。
摘要由CSDN通过智能技术生成