Ejemplo n.º 1
0
        public void Connect(Control _control, ConnectorFactory _factory)
        {
            WACControl          myContainer           = null;
            WACControlConnector myContainersConnector = null;

            try { myContainer = (WACControl)WACNamingContainer(_control); } catch (Exception) { }
            if (myContainer != null)
            {
                myContainersConnector = getConnector(myContainer, _factory);
            }
            if (myContainersConnector != null)
            {
                myContainersConnector.TryAdd((WACControl)_control);
            }
            if (ServiceFactory.IsDisconnectedControl(_control))
            {
                return;
            }
            if (ServiceFactory.IsIndependentControl(_control))
            {
                _connect(_control, _factory, null);
            }
            else
            {   // Dependent
                if (myContainersConnector != null)
                {
                    if (myContainersConnector.ViewModel == null)
                    {
                        myContainersConnector.Connect(myContainer, _factory);
                    }
                    _connect(_control, _factory, myContainersConnector.ViewModel);
                }
            }
            this.ContainedControls = getContents(_control, this);
        }
Ejemplo n.º 2
0
        public void TryAdd(WACControl wc)
        {
            if (ContainedControls == null)
            {
                ContainedControls = new List <WACControl>();
            }
            int _index = ContainedControls.IndexOf(wc);

            if (_index > -1)
            {
                ContainedControls.RemoveAt(_index);
            }
            ContainedControls.Add(wc);
        }