public virtual void OnEnable()
 {
     // Close Button
     if (CloseContainerButton)
     {
         CloseContainerButton.onClick.AsObservable().Subscribe(_ => {
             UIContainer container = transform.GetComponentInParent <UIContainer>();
             GameManager.Instance.UIModule.HideUIContainer(container.Key);
         }).AddTo(this);
     }
 }
        public void ShowUIContainer(string _UIContainerKey, OpenUIContainerSettings _openingSettins)
        {
            UIContainer c = GameManager.Instance.UIModule.GetUIContainerByKey(_UIContainerKey);

            if (c)
            {
                c.Show();
            }
            else
            {
                Debug.LogWarningFormat("UIContainer with key {0} not found as child of UIRoot.", _UIContainerKey);
            }
        }
        public void HideUIContainer(string _UIContainerKey)
        {
            UIContainer c = GameManager.Instance.UIModule.GetUIContainerByKey(_UIContainerKey);

            if (c)
            {
                c.Hide();
            }
            else
            {
                Debug.LogWarningFormat("UIContainer with key {0} not found as child of UIRoot.", _UIContainerKey);
            }
        }
        public void OnMouseDown()
        {
            UIContainer container = transform.GetComponentInParent <UIContainer>();

            GameManager.Instance.UIModule.HideUIContainer(container.Key);
        }