Пример #1
0
        private void UpdateUserTree()
        {
            ClearRoom("others");
            var users = engine.GetOnlineUsers();

            foreach (var user in users)
            {
                AddToRoom("others", user.ID.ToString(), user.NickName);
            }
            if (tabControl.SelectedTab == logTabPage || tabControl.SelectedTab == null || tabControl.SelectedTab.Name != tabControl.SelectedTab.Text)
            {
                userTreeView.Nodes.RemoveByKey("this");
                return;
            }
            var roomName = tabControl.SelectedTab.Name;
            var thisText = roomName + " (0)";
            var thisNode = userTreeView.Nodes["this"];

            if (thisNode == null)
            {
                userTreeView.Nodes.Insert(0, "this", thisText, 2, 2);
            }
            else
            {
                thisNode.Text = thisText; // избыточно
                ClearRoom("this");
            }

            if (engine.IsOnline())
            {
                engine.GetAllUsers(roomName);
            }
        }