У каждого ЭлементСпискаЗначений, помимо Значение/Представление/Пометка/Картинка, есть скрытый уникальный идентификатор — присваивается при создании и не меняется, что бы ни происходило со списком дальше (сортировки, изменение значения, вставки других элементов).
Элемент = Список.Добавить("хлеб");
Идентификатор = Элемент.ПолучитьИдентификатор();
// ...список отсортировали, значение элемента поменяли...
ТотЖеЭлемент = Список.НайтиПоИдентификатору(Идентификатор);| Метод | Параметр | Описание |
|---|---|---|
ПолучитьИдентификатор() | — | у элемента списка — вернуть его идентификатор |
НайтиПоИдентификатору(Идентификатор) | значение идентификатора | у списка — найти элемент по нему |
Возвращает: ЭлементСпискаЗначений или Неопределено, если элемента с таким идентификатором больше нет (удалён).
В отличие от НайтиПоЗначению(), который может найти не тот элемент, если несколько элементов имеют одинаковое Значение, идентификатор всегда указывает ровно на один конкретный элемент. Пригождается, когда список значений привязан к элементу управления формы (например, полю со списком с флажками), и нужно однозначно сослаться на «вот этот, третий по счёту при открытии формы» элемент даже после того, как пользователь список отсортировал или отредактировал.