示例#1
0
        /// <summary>
        /// Удаление последнего по списку
        /// </summary>
        public void Delete()
        {
            PersonBase[] newArray = new PersonBase[_dataArray.Length - 1];

            for (int i = 0; i < _dataArray.Length - 1; i++)
            {
                newArray[i] = _dataArray[i];
            }

            _dataArray = newArray;
        }
示例#2
0
        /// <summary>
        /// Создание базовых данных персоны
        /// </summary>
        /// <returns></returns>
        private static void RandomBaseInfo(PersonBase person)
        {
            person.Name =
                person.Gender == GenderType.Male
                ? GetRandomString(Properties.Resources.MaleNames)
                : GetRandomString(Properties.Resources.FemaleNames);

            person.Sername =
                person.Gender == GenderType.Male
                ? GetRandomString(Properties.Resources.MaleSernames)
                : GetRandomString(Properties.Resources.FemaleSernames);
        }
示例#3
0
        /// <summary>
        /// Доавление персоны в список
        /// </summary>
        /// <param name="person">
        /// Персона, которую необходимо внести в список
        /// </param>
        public void AddPerson(PersonBase person)
        {
            PersonBase[] newArray = new PersonBase[_dataArray.Length + 1];

            for (int i = 0; i < _dataArray.Length; i++)
            {
                newArray[i] = this._dataArray[i];
            }

            newArray[_dataArray.Length] = person;

            _dataArray = newArray;
        }
示例#4
0
        /// <summary>
        /// Получение индекса конкретной персоны по списку (-1 по умолчанию)
        /// </summary>
        /// <param name="person">Искомая персона</param>
        /// <returns>Номер персоны в списке</returns>
        public int GetIndex(PersonBase person)
        {
            int index = -1;

            for (int i = 0; i < _dataArray.Length; i++)
            {
                if (_dataArray[i] == person)
                {
                    index = i;
                }
            }

            return(index);
        }
示例#5
0
        /// <summary>
        /// Удаление персоны с заданным номером
        /// </summary>
        /// <param name="index">Номер удалаемой персоны</param>
        public void DeleteByIndex(int index)
        {
            CheckIndex(index);

            PersonBase[] newArray = new PersonBase[_dataArray.Length - 1];

            for (int i = 0; i < _dataArray.Length - 1; i++)
            {
                // Заполнение до удалённой строки
                if (i < index)
                {
                    newArray[i] = this._dataArray[i];
                }

                // Заполнение после удалённой строки
                else
                {
                    newArray[i] = this._dataArray[i + 1];
                }
            }

            _dataArray = newArray;
        }