public void CreateBinding(GameObject obj)
        {
            _viewGameObject = obj;
            _viewCanvas     = _viewGameObject.GetComponent <Canvas>();

            bool bFirst = false;
            var  view   = obj.GetComponent <CommonFocusMaskView>();

            if (view == null)
            {
                bFirst = true;
                view   = obj.AddComponent <CommonFocusMaskView>();
                view.FillField();
            }
            DataInit(view);
            SpriteReset();
            view.BindingContext().DataContext = this;
            if (bFirst)
            {
                SaveOriData(view);
                ViewBind(view);
            }
            _view = view;

            view.GenerateTrigger();
            EventTriggerBind(view);
        }
 private void EventTriggerBind(CommonFocusMaskView view)
 {
     _onOnMaskEventTriggerHoverChanged     = (val) => view.OnMaskEventTriggerHover = val;
     _onOnMaskEventTriggerClickChanged     = (val) => view.OnMaskEventTriggerClick = val;
     _onOnMaskEventTriggerMouseDownChanged = (val) => view.OnMaskEventTriggerMouseDown = val;
     _onOnMaskEventTriggerMouseUpChanged   = (val) => view.OnMaskEventTriggerMouseUp = val;
     _onOnMaskEventTriggerHoverExitChanged = (val) => view.OnMaskEventTriggerHoverExit = val;
 }
        void ViewBind(CommonFocusMaskView view)
        {
            BindingSet <CommonFocusMaskView, CommonFocusMaskViewModel> bindingSet =
                view.CreateBindingSet <CommonFocusMaskView, CommonFocusMaskViewModel>();

            bindingSet.Bind(view.Show).For(v => v.activeSelf).To(vm => vm.Show).OneWay();

            bindingSet.Build();
        }
 void SaveOriData(CommonFocusMaskView view)
 {
     view.oriShow = _show;
 }
 void DataInit(CommonFocusMaskView view)
 {
     _show = view.Show.activeSelf;
 }