Поделиться через


PeoplePicker контроль (предварительная версия)

[Данная статья посвящена предварительному выпуску и может быть изменена.]

Элемент управления, используемый для создания процесса загрузки.

Заметка

Полная документация и исходный код находятся в разделе Репозиторий компонентов кода на GitHub.

Элемент управления PeoplePicker.

Внимание

  • Это предварительная версия функции.
  • Предварительные версии функций не предназначены для использования в производственной среде, а их функциональность может быть ограничена. Они доступны перед официальным выпуском, чтобы клиенты могли досрочно получить доступ и предоставить отзывы.

Description

Средство выбора людей (PeoplePicker) используется для выбора одного или нескольких сущностей, таких как люди или группы, из списка. Оно позволяет легко составить электронное письмо кому-либо или добавить его в группу, если вы не знаете его полного имени или адреса электронной почты.

Этот компонент кода обеспечивает оболочку вокруг элемента управления Fluent UI PeoplePicker для использования в приложениях на основе холста и на пользовательских страницах. Рекомендации см. в документации по компонентам.

Ключевые свойства

Свойство Description
Items Предварительно выбранные пользователи (участники) для отображения в Peoplepicker
Suggestions_Items Список предлагаемых участников на выбор. Это обязательное свойство набора данных
PeoplePickerType Тип используемого элемента управления PeoplePicker.
MaxPeople Максимальное количество пользователей, которых можно выбрать
NoResultFoundMesage Сообщение, которое будет отображаться, если по указанному тексту поиска не найдено ни одного результата.
MinimumSearchTermLength Минимальная длина условия поиска, которое необходимо ввести перед предоставлением предложений.
SearchTermToShortMessage Пользовательское сообщение, которое будет отображаться, когда длина текста поиска меньше MinimumSearchTermLength.
Error Чтобы выделить средство выбора людей красным, чтобы показать, что в нем есть определенная ошибка, требующая проверки.
ShowSecondaryText Укажите «Да» или «Нет» в зависимости от того, должен ли отображаться вторичный текст (например, JobTitle).

Items характеристики

Свойство Description
PersonaName Отображаемое имя пользователя.
PersonaKey Ключ идентифицирует конкретный элемент. Ключ должен быть уникальным.
PersonaImgUrl URL-адрес или содержимое Base64 изображения пользователя (изображение профиля).
PersonaRole Дополнительный текст, желательно JobTitle пользователя
PersonaPresence Необязательно — присутствие человека для отображения — не будет отображать присутствие, если оно не определено. Значение должно быть одним из следующих: away, blocked, busy, dnd, none, offline, online
PersonaOOF Необязательно — True или False, в зависимости от того, есть ли пользователь на месте или нет.

Suggestions_Items характеристики

Свойство Description
SuggestionName Отображаемое имя пользователя.
SuggestionKey Ключ идентифицирует конкретный элемент. Ключ должен быть уникальным.
SuggestionImgUrl URL-адрес или содержимое Base64 изображения пользователя (изображение профиля).
SuggestionRole Дополнительный текст, желательно JobTitle пользователя
SuggestionPresence Необязательно — присутствие человека для отображения — не будет отображать присутствие, если оно не определено. Значение должно быть одним из следующих: away, blocked, busy, dnd, none, offline, online
SuggestionOOF Необязательно — True или False, в зависимости от того, есть ли пользователь на месте или нет.

Дополнительные свойства

Свойство Description
Theme Принимает строку JSON, сгенерированную с помощью Конструктора тем Fluent UI (windows.net). Если оставить это поле пустым, будет использоваться тема по умолчанию, определенная Power Apps.
AccessibilityLabel Подпись Aria для программы чтения с экрана
InputEvent Событие, которое требуется отправить элементу управления. Поддерживает SetFocus как InputEvent.

Примеры

PeoplePicker поддерживает другие источники, из которых можно получить входную коллекцию. Ниже приведены примеры использования компонента PeoplePicker.

Соединитель пользователей Office 365

  1. Добавьте соединитель "Пользователи Office 365" как источник данных.

  2. Назначьте приведенную ниже формулу Power Fx свойству При поиске элемента управления для создания коллекции с именем UserCollection.

    ClearCollect(
        UserCollection,
        AddColumns(
            Filter(
                Office365Users.SearchUser(
                    {
                        searchTerm: Self.SearchText,
                        top: 500
                    }
                ),
                !(Mail in Self.SelectedPeople.PersonaKey)
            ),
            "SuggestionImgUrl",
            Substitute(
                JSON(
                    Office365Users.UserPhotoV2(Id),
                    JSONFormat.IncludeBinaryData
                ),
                """",
                ""
            ),
            "SuggestionKey",
            Mail,
            "SuggestionName",
            DisplayName,
            "SuggestionRole",
            JobTitle,
            "SuggestionPresence",
            "away"
        )
    )
    
  3. Установите свойство Suggestions_Items в значение UserCollection.

    Заметка

    Приведенная выше формула включает последовательный запрос на получение UserPhoto, что увеличивает время загрузки. Если вам не нужны фотографии и вы хотите сократить время поиска, используйте следующую формулу в свойстве Suggestions_Items элемента управления вместо UserCollection:

    AddColumns(
        Office365Users.SearchUser({ searchTerm: Self.SearchText, top: 500 }),
        "SuggestionKey", Mail, 
        "SuggestionName", DisplayName,
        "SuggestionRole", JobTitle
    )
    

В этот момент элемент управления работает, и выбранные участники могут быть получены из свойства SelectedPeople.

PeoplePicker1.SelectedPeople

С таблицами Dataverse — пользователи Microsoft Entra или пользователи

  1. Настройте свойство Suggestions_Items, указав приведенный ниже фрагмент кода.

    Добавьте пользователей или конкретных пользователей (используя приведенный ниже код) из таблицы в коллекцию элементов (в свойство Suggestions_Items) элемента управления PeoplePicker.

    -AAD Users стол

    Search('AAD Users', Self.SearchText,"displayname" ,"mail")
    

    -Users стол

    Search('Users', Self.SearchText,"fullname","internalemailaddress")
    
  2. Сопоставьте столбцы в соответствии с вашими потребностями, используя AddColumns(). Ниже приведен пример сопоставления столбцов и свойств:

    Имя свойства Столбец таблицы AADUser Столбец таблицы User
    SuggestionKey "mail" "internalemailaddress"
    SuggestionName "displayname" "fullname"
    SuggestionRole "jobtitle" "jobtitle"

На этом этапе средство выбора людей должно работать, и выбранные участники могут быть получены из свойства SelectedPeople.

PeoplePicker1.SelectedPeople

Ограничения

Этот компонент холста можно использовать только в приложениях на основе холста и настраиваемых страницах.