コード例 #1
0
ファイル: VMElement.cs プロジェクト: dockerian/csharp-coding
        public void Detach(VMElement eventSubscriber)
        {
            for (int i = _modelSubscribers.Count - 1; i >= 0; i--)
            {
                if ((_modelSubscribers[i].Target == eventSubscriber) || (_modelSubscribers[i].Target == null))
                {
                    _modelSubscribers.RemoveAt(i);
                }
            }

            eventSubscriber.WeakOnPropertyChanged.DetachEvent(_sourceElement);
        }
コード例 #2
0
 public Validator(VMElement elem)
 {
     _e = elem;
 }
コード例 #3
0
ファイル: VMElement.cs プロジェクト: dockerian/csharp-coding
 internal void DetachEvent(VMElement eventSource)
 {
     _handlers.Remove(eventSource);
 }
コード例 #4
0
ファイル: VMElement.cs プロジェクト: dockerian/csharp-coding
 internal void AttachEvent(VMElement eventSource, PropertyChangedEventHandler eventHandler)
 {
     _handlers[eventSource] = eventHandler;
 }
コード例 #5
0
ファイル: VMElement.cs プロジェクト: dockerian/csharp-coding
        public void Attach(VMElement eventSubscriber, PropertyChangedEventHandler eventHandler)
        {
            _modelSubscribers.Add(new WeakReference(eventSubscriber));

            eventSubscriber.WeakOnPropertyChanged.AttachEvent(_sourceElement, eventHandler);
        }
コード例 #6
0
ファイル: VMElement.cs プロジェクト: dockerian/csharp-coding
 public WeakPropertyObserver(VMElement sourceElement)
 {
     _sourceElement = sourceElement;
 }