protected override void OnPropertyChanged(string propertyName, bool notifyChanges, bool dirtyHandlerOn, SeenObjectCollection callers)
        {
            // This is to avoid infinite loops: in case a caller receives back a property changed notification it has initially sent
            if (callers.GetSeenObject(this) != null)
            {
                return;
            }

            base.OnPropertyChanged(propertyName, notifyChanges, dirtyHandlerOn, callers);

            if (!notifyChanges)
            {
                return;
            }

            if (propertyName == "Uri")
            {
                OnPropertyChanged("URILink", true, dirtyHandlerOn);
                OnPropertyChanged("WebIdLink", true, dirtyHandlerOn);
            }


            // Push the notification to related objects
            var gOUser = GetGOUser(false);

            if (gOUser != null && this.IsDirty)
            {
                gOUser.NotifyPropertyChanged("UserProfile." + propertyName, callers);
            }

            if (GetVisitedPlaceItems(false) != null)
            {
                foreach (var item in GetVisitedPlaceItems(false))
                {
                    item.NotifyPropertyChanged(String.Concat("UserProfile.", propertyName), callers);
                }
            }
        }
		protected override void OnPropertyChanged(string propertyName, bool notifyChanges, bool dirtyHandlerOn, SeenObjectCollection callers)
        {
            // This is to avoid infinite loops: in case a caller receives back a property changed notification it has initially sent
            if (callers.GetSeenObject(this) != null)
                return;

            base.OnPropertyChanged(propertyName, notifyChanges, dirtyHandlerOn, callers);
			
            if (!notifyChanges)
                return;

			
			// Push the notification to related objects
			if (GetGroupRoleItems(false) != null)
            {
                foreach (var item in GetGroupRoleItems(false))
                {
                    item.NotifyPropertyChanged(String.Concat("Group.", propertyName), callers);                    
                }
            }

			if (GetUserGroupItems(false) != null)
            {
                foreach (var item in GetUserGroupItems(false))
                {
                    item.NotifyPropertyChanged(String.Concat("Group.", propertyName), callers);                    
                }
            }

        }		
        protected override void OnPropertyChanged(string propertyName, bool notifyChanges, bool dirtyHandlerOn, SeenObjectCollection callers)
        {
            // This is to avoid infinite loops: in case a caller receives back a property changed notification it has initially sent
            if (callers.GetSeenObject(this) != null)
            {
                return;
            }

            base.OnPropertyChanged(propertyName, notifyChanges, dirtyHandlerOn, callers);

            if (!notifyChanges)
            {
                return;
            }


            // Push the notification to related objects
        }
Пример #4
0
        protected override void OnPropertyChanged(string propertyName, bool notifyChanges, bool dirtyHandlerOn, SeenObjectCollection callers)
        {
            // This is to avoid infinite loops: in case a caller receives back a property changed notification it has initially sent
            if (callers.GetSeenObject(this) != null)
            {
                return;
            }

            base.OnPropertyChanged(propertyName, notifyChanges, dirtyHandlerOn, callers);

            if (!notifyChanges)
            {
                return;
            }

            if (propertyName == "URI")
            {
                OnPropertyChanged("URILink", true, dirtyHandlerOn);
            }


            // Push the notification to related objects
            if (GetPlaceToLocationItems(false) != null)
            {
                foreach (var item in GetPlaceToLocationItems(false))
                {
                    item.NotifyPropertyChanged(String.Concat("Location.", propertyName), callers);
                }
            }
        }