예제 #1
0
 internal PropertyManagerPageCustomControl(int id, object tag,
                                           IPropertyManagerPageWindowFromHandle wndFromHandler,
                                           SwPropertyManagerPageHandler handler, IXCustomControl control) : base(wndFromHandler, id, tag, handler)
 {
     m_Handler.CustomControlCreated += OnCustomControlCreated;
     m_Control = control;
     m_Control.DataContextChanged += OnDataContextChanged;
 }
예제 #2
0
        private void OnPageOpening()
        {
            if (m_CurrentControl != null)
            {
                m_CurrentControl.DataContextChanged -= OnDataContextChanged;
            }

            m_CurrentControl = m_ControlFact.Invoke();
            m_CurrentControl.DataContextChanged += OnDataContextChanged;
        }
예제 #3
0
        private void OnPageOpening()
        {
            if (m_CurrentControl != null)
            {
                m_CurrentControl.ValueChanged -= OnDataContextChanged;
            }

            m_CurrentControl = m_Creator.CreateControl(m_CtrlType, out _);
            m_CurrentControl.ValueChanged += OnDataContextChanged;
        }
예제 #4
0
 private void OnDataContextChanged(IXCustomControl ctrl, object newVal)
 {
     ValueChanged?.Invoke(this, newVal);
 }