示例#1
0
        internal Group(
            GroupGeneratorNode node,
            CollectionViewGroup group,
            LateGroupLevelDescription groupLevelDescription,
            DataGridContext dataGridContext)
        {
            if (node == null)
            {
                throw new ArgumentNullException("node");
            }

            if (group == null)
            {
                throw new ArgumentNullException("group");
            }

            if (groupLevelDescription == null)
            {
                throw new ArgumentNullException("groupLevelDescription");
            }

            if (dataGridContext == null)
            {
                throw new ArgumentNullException("dataGridContext");
            }

            m_collectionViewGroup = group;

            // Initialization is done through setters to register for events.
            this.DataGridContext       = dataGridContext;
            this.GeneratorNode         = node;
            this.GroupLevelDescription = groupLevelDescription;
        }
示例#2
0
        private void UnregisterGroupLevelDescriptionEvent(LateGroupLevelDescription item)
        {
            if (item == null)
            {
                return;
            }

            item.PropertyChanged -= new PropertyChangedEventHandler(this.OnGroupLevelDescriptionChanged);
        }
示例#3
0
        private void RegisterGroupLevelDescriptionEvent(LateGroupLevelDescription item, bool force)
        {
            if (item == null)
            {
                return;
            }

            lock (this.SyncRoot)
            {
                if (!force && (m_propertyChanged == null))
                {
                    return;
                }

                item.PropertyChanged += new PropertyChangedEventHandler(this.OnGroupLevelDescriptionChanged);
            }
        }