แชร์ผ่าน


PeoplePicker การควบคุม (พรีวิว)

[บทความนี้เป็นคู่มือรุ่นก่อนวางจำหน่าย และอาจจะมีการเปลี่ยนแปลงในอนาคต]

ตัวควบคุมที่ใช้เพื่อสร้างประสบการณ์การโหลด

หมายเหตุ

รหัสแหล่งที่มาของส่วนประกอบและข้อมูลเพิ่มเติมใน ที่เก็บส่วนประกอบของโค้ด GitHub

ตัวควบคุม PeoplePicker

สำคัญ

  • นี่คือคุณลักษณะพรีวิว
  • คุณลักษณะการแสดงตัวอย่างไม่ได้มีไว้สำหรับการนำไปใช้งานจริง และอาจมีการจำกัดฟังก์ชันการทำงาน คุณลักษณะเหล่านี้สามารถใช้ได้ก่อนการเปิดตัวอย่างเป็นทางการ เพื่อให้ลูกค้าสามารถเข้าใช้งานได้ก่อนเวลาและให้ข้อคิดเห็น

Description

ตัวเลือกบุคคล (PeoplePicker) ใช้เลือกเอนทิตีอย่างน้อยหนึ่งรายการ เช่น บุคคลหรือกลุ่ม จากรายการ ทำให้การเขียนอีเมลถึงบางคนหรือเพิ่มลงในกลุ่มเป็นเรื่องง่าย หากคุณไม่ทราบชื่อเต็มหรือที่อยู่อีเมลของบุคคลนั้น

ส่วนประกอบของโค้ดนี้จัดเตรียมแรปเปอร์รอบตัวควบคุม Fluent UI PeoplePicker เพื่อใช้ในแอปพื้นที่ทำงานและหน้าแบบกำหนดเอง ดูคู่มือส่วนประกอบสำหรับแนวทางปฏิบัติที่ดีที่สุด

คุณสมบัติที่สำคัญ

คุณสมบัติ Description
Items Persona(members) ที่เลือกไว้ล่วงหน้าที่จะปรากฏใน Peoplepicker
Suggestions_Items รายชื่อของสมาชิกที่แนะนำให้เลือก ซึ่งเป็นคุณสมบัติชุดข้อมูลที่จำเป็น
PeoplePickerType ชนิดของ Peoplepicker ที่จะใช้
MaxPeople จำนวนผู้ใช้สูงสุดที่อนุญาตให้เลือกได้
NoResultFoundMesage ข้อความที่จะแสดงหากไม่พบผลลัพธ์ตามข้อความค้นหาที่ระบุ
MinimumSearchTermLength ต้องป้อนความยาวขั้นต่ำของคำที่ใช้ค้นหาก่อนให้ข้อเสนอแนะ
SearchTermToShortMessage ข้อความที่กำหนดเองที่จะแสดงเมื่อข้อความค้นหาน้อยกว่า MinimumSearchTermLength
Error ในการเน้นตัวเลือกบุคคลด้วยสีแดงเพื่อแสดงว่ามีข้อผิดพลาดบางอย่างที่จำเป็นต้องมีการตรวจสอบ
ShowSecondaryText ระบุว่า ใช่ หรือ ไม่ใช่ ขึ้นอยู่กับว่าจะแสดงข้อความรอง (เช่น ชื่องาน) หรือไม่

Items คุณสมบัติ

คุณสมบัติ Description
PersonaName ชื่อที่แสดงของบุคคล
PersonaKey คีย์ระบุรายการเฉพาะ คีย์ต้องไม่ซ้ำกัน
PersonaImgUrl เนื้อหา URL หรือ Base64 ของภาพบุคคล (รูปโปรไฟล์)
PersonaRole ข้อความรอง โดยเฉพาะตำแหน่งงานของบุคคล
PersonaPresence ไม่บังคับ - การแสดงตนของบุคคลที่จะแสดง - จะไม่แสดงสถานะหากไม่ได้กำหนดไว้ ค่าควรมาจากรายการใดรายการหนึ่งต่อไปนี้: away, blocked, busy, dnd, none, offline, online
PersonaOOF ไม่บังคับ - จริงหรือเท็จ ขึ้นอยู่กับว่าบุคคลนั้นไม่อยู่ในสำนักงานหรือไม่

Suggestions_Items คุณสมบัติ

คุณสมบัติ Description
SuggestionName ชื่อที่แสดงของบุคคล
SuggestionKey คีย์ระบุรายการเฉพาะ คีย์ต้องไม่ซ้ำกัน
SuggestionImgUrl เนื้อหา URL หรือ Base64 ของภาพบุคคล (รูปโปรไฟล์)
SuggestionRole ข้อความรอง โดยเฉพาะตำแหน่งงานของบุคคล
SuggestionPresence ไม่บังคับ - การแสดงตนของบุคคลที่จะแสดง - จะไม่แสดงสถานะหากไม่ได้กำหนดไว้ ค่าควรมาจากรายการใดรายการหนึ่งต่อไปนี้: away, blocked, busy, dnd, none, offline, online
SuggestionOOF ไม่บังคับ - จริงหรือเท็จ ขึ้นอยู่กับว่าบุคคลนั้นไม่อยู่ในสำนักงานหรือไม่

คุณสมบัติเพิ่มเติม

คุณสมบัติ Description
Theme ยอมรับสตริง JSON ที่สร้างขึ้นโดยใช้ ตัวออกแบบธีม Fluent UI (windows.net) การเว้นว่างไว้จะใช้ธีมเริ่มต้นที่กำหนดโดย Power Apps
AccessibilityLabel ป้ายชื่อ aria สำหรับโปรแกรมอ่านหน้าจอ
InputEvent เหตุการณ์ที่ส่งตัวควบคุม รองรับ SetFocus เป็น InputEvent

ตัวอย่าง

PeoplePicker รองรับแหล่งอื่น ๆ ที่สามารถดึงข้อมูลคอลเลกชันอินพุตได้ ต่อไปนี้เป็นตัวอย่างวิธีการใช้ส่วนประกอบ PeoplePicker

ตัวเชื่อมต่อผู้ใช้ Office 365

  1. เพิ่มตัวเชื่อมต่อผู้ใช้ Office 365 เป็นแหล่งข้อมูล

  2. กำหนดสูตร Power Fx ด้านล่างเป็นคุณสมบัติ On Search ของตัวควบคุมเพื่อสร้างคอลเลกชันที่ชื่อ 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 คอลัมน์ของตารางผู้ใช้
    SuggestionKey "mail" "internalemailaddress"
    SuggestionName "displayname" "fullname"
    SuggestionRole "jobtitle" "jobtitle"

ในจุดนี้ ตัวเลือกบุคคลควรทำงานและสมาชิกที่เลือกสามารถรับได้จากคุณสมบัติ SelectedPeople

PeoplePicker1.SelectedPeople

ข้อจำกัด

ส่วนประกอบของพื้นที่ทำงานนี้ใช้ได้เฉพาะในแอปพื้นที่ทำงานและหน้าที่กำหนดเองเท่านั้น