PeoplePicker การควบคุม (พรีวิว)
[บทความนี้เป็นคู่มือรุ่นก่อนวางจำหน่าย และอาจจะมีการเปลี่ยนแปลงในอนาคต]
ตัวควบคุมที่ใช้เพื่อสร้างประสบการณ์การโหลด
หมายเหตุ
รหัสแหล่งที่มาของส่วนประกอบและข้อมูลเพิ่มเติมใน ที่เก็บส่วนประกอบของโค้ด GitHub
สำคัญ
- นี่คือคุณลักษณะพรีวิว
- คุณลักษณะการแสดงตัวอย่างไม่ได้มีไว้สำหรับการนำไปใช้งานจริง และอาจมีการจำกัดฟังก์ชันการทำงาน คุณลักษณะเหล่านี้สามารถใช้ได้ก่อนการเปิดตัวอย่างเป็นทางการ เพื่อให้ลูกค้าสามารถเข้าใช้งานได้ก่อนเวลาและให้ข้อคิดเห็น
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
เพิ่มตัวเชื่อมต่อผู้ใช้ Office 365 เป็นแหล่งข้อมูล
กำหนดสูตร 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" ) )
ตั้งค่าคุณสมบัติ
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 หรือผู้ใช้
ตั้งค่าคุณสมบัติ
Suggestions_Items
โดยระบุส่วนย่อยของโค้ดด้านล่างเพิ่มผู้ใช้หรือผู้ใช้เฉพาะ (โดยใช้โค้ดด้านล่าง) จากตารางไปยังคอลเลกชันรายการ (ภายใต้คุณสมบัติ
Suggestions_Items
) ของPeoplePicker
-
AAD Users
โต๊ะSearch('AAD Users', Self.SearchText,"displayname" ,"mail")
-
Users
โต๊ะSearch('Users', Self.SearchText,"fullname","internalemailaddress")
แมปคอลัมน์ตามความต้องการของคุณโดยใช้ AddColumns() ด้านล่างนี้เป็นตัวอย่างของการแมปคอลัมน์-คุณสมบัติ:
ชื่อคุณสมบัติ คอลัมน์ของตาราง AADUser คอลัมน์ของตารางผู้ใช้ SuggestionKey "mail" "internalemailaddress" SuggestionName "displayname" "fullname" SuggestionRole "jobtitle" "jobtitle"
ในจุดนี้ ตัวเลือกบุคคลควรทำงานและสมาชิกที่เลือกสามารถรับได้จากคุณสมบัติ SelectedPeople
PeoplePicker1.SelectedPeople
ข้อจำกัด
ส่วนประกอบของพื้นที่ทำงานนี้ใช้ได้เฉพาะในแอปพื้นที่ทำงานและหน้าที่กำหนดเองเท่านั้น