public void Disconnect()
        {
            List <int> l_ServerHandleList = m_ServerModel.GetServerHandleList();

            if (l_ServerHandleList.Count > 0)
            {
                try
                {
                    int[] l_RemoveRes;
                    m_Group.RemoveItems(l_ServerHandleList.ToArray(), out l_RemoveRes);
                }
                catch (Exception)
                {
                }
            }

            if (m_Group != null)
            {
                m_Group.DataChanged -= new DataChangeEventHandler(Group_DataChange);

                try
                {
                    m_Group.Remove(true);
                }
                catch (Exception)
                {
                }
            }

            if (m_Server != null)
            {
                m_Server.ShutdownRequested -= new ShutdownRequestEventHandler(Server_ShutdownRequest);

                try
                {
                    m_Server.Disconnect();
                }
                catch (Exception)
                {
                }
            }
        }