快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

和记娱乐最新版本app_机器人论坛



近来项目里用到treeview,本来设计的是一开始就把所稀有据都加载到treeview里,后来发明客户的数据量其实太大年夜,加载所稀有据要2分钟,这个是客户没法吸收的。后来就斟酌到用户也不是一开始就要看所有的数据,用户也是一层一层地展开,以是我们就斟酌是不是可以实现以当用户展开某个结点时才加载当前结点下面的数据。一番查找后,发明treeview有BeforeExpand事故可以实现我们的需求。

下面先容详细的实今世码:

1. 首先只加载各部门(结点)的信息

1: Liststring> m_Departments = new Liststring>() { "湖北.黄石", "湖北.鄂州", "湖北.武汉" };

2: 和记娱乐最新版本appprivate void AddDepartMents(Liststring> departments)

3: {

4:if (m_Root == null)

5:{

6:var root = departments[0].Split('.')[0];

7:m_Root = new TreeNode(root);

8:m_Root.Tag = root;

9:treeView1.Nodes.Add(m_Root);

10:}

11:

12:

13:foreach (var department in departments)

14:{

15:var parent = m_Root;

16:var dts = department.Split('.');

17:for (int i = 1; i

18:{

19:if (!m_OrgNodeManager.Con和记娱乐最新版本apptainsKey(dts[i]))

20:{

21:var child = new T和记娱乐最新版本appreeNode(dts[i],1,1);

22:child.Tag = dts[i];

23:child.ToolTipText = department;

24:m_OrgNodeManager.Add(dts[i], child);

25:parent.Nodes.Add(child);

26:parent = child;

27:}

28:}

29:

30:parent.Nodes.Add("");

31:}

32: }

这里要留意,每个结点加完后和记娱乐最新版本app,要加上一个空的子结点parent.Nodes.Add(""); 不然就没有那个加号让你点了。

2. 实现BeforeExpand事故

1: private void treeView1_BeforeExpand(object sender, TreeViewCancelEventArgs e)

2: {

3:TreeNode curentNode = e和记娱乐最新版本app.Node;

4:if (curentNode.ImageIndex == 1)

5:{

6:curentNode.Nodes.Clear();

7:foreach (var user in m_UserManager)

8:{

9:if (user.Value.ToString() == curentNode.ToolTipText.ToString())

10:{

11:TreeNode userNode = new TreeNode(user.Key);

12:curentNode.Nodes.Add(userNode);

13:}

14:}

15:}

16: }

您可能还会对下面的文章感兴趣: