/// <summary>
        /// Adds new entity to be inserted
        /// </summary>
        /// <param name="entity">The entity.</param>
        internal void Add(TEntity entity)
        {
            TEntityWrapper <TEntity> _wrpr = new TEntityWrapper <TEntity>(m_DataContext, entity, PropertyChanged, MyList);

            m_Collection.Add(_wrpr.Index, _wrpr);
            m_Unchaged = false;
        }
        /// <summary>
        /// Adds an entity for the specified list item.
        /// </summary>
        /// <param name="listItem">The list item.</param>
        /// <param name="dataContext">The data context.</param>
        /// <returns></returns>
        internal TEntity Add(ListItem listItem)
        {
            Dictionary <string, StorageItem> _storageDic = ListItemPropertiesDictionary();
            TEntityWrapper <TEntity>         _erp        = new TEntityWrapper <TEntity>(m_DataContext, listItem, _storageDic, PropertyChanged);
            TEntity _newEntity = _erp.TEntityGetter;

            m_Collection.Add(_erp.Index, _erp);
            return(_newEntity);
        }