public void Init(PrivateChatSession session, PgUser otherUser)
        {
            _session = session;
            _otherUser = otherUser;
            PropertyChangedEventManager.AddListener(_otherUser, this, "PropertyChanged");
            Title = otherUser.Username;

            _session.ChatMessageReceived += ChatMessages_CollectionChanged;
            _session.SendMessageFailed += MessageSendFailed;
        }
        private ChatSessionBase GetOrCreatePrivateChatSession(PgUser user)
        {
            ChatSessionBase chat;
            if (_privateChats.TryGetValue(user, out chat))
                return chat;

            var session = new PrivateChatSession(this, user);
            _privateChats[user] = session;
            session.ShowControl(false);
            return session;
        }