Exemplo n.º 1
0
        /// <summary>
        /// Thêm vào một màn hình mới - màn hình này sẽ là màn hình mới nhất và
        /// được hiển thị, tất cả các màn hình trước đó đã thêm vào
        /// bị ẩn đi (đặt biến Visibled bằng false).
        /// </summary>
        /// <param name="screenToAdd">Màn hình cần thêm vào</param>
        public void Add(TSScreen screenToAdd)
        {
            if (screenToAdd != null)
            {
                if (_screens.Count > 0)
                    _screens[_screens.Count - 1].Visibled = false;

                screenToAdd.ScreenManager = this;
                screenToAdd.Visibled = true;

                _screens.Add(screenToAdd);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Đóng một màn hình. Nếu màn hình đang được hiển thị bị đóng
        /// màn hình trước đó sẽ được vẽ lên màn hình.
        /// </summary>
        /// <param name="screenToClose"></param>
        public void Close(TSScreen screenToClose)
        {
            int screenIndex;

            if (screenToClose == null)
                return;

            screenIndex = _screens.IndexOf(screenToClose);

            if ((screenIndex < 0) || (screenIndex >= _screens.Count))
                return;

            if (screenIndex == (_screens.Count - 1))
                if ((_screens.Count - 2) >= 0)
                    _screens[_screens.Count - 2].Visibled = true;

            _screens.RemoveAt(screenIndex);
            screenToClose.Visibled = true;
        }