หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
ตัวควบคุมที่ประกอบด้วยตัวควบคุมอื่น ๆ และแสดงชุดของข้อมูล
คำอธิบาย
ตัวควบคุม แกลเลอรี สามารถแสดงหลายระเบียนจากแหล่งข้อมูล และแต่ละระเบียนสามารถมีหลายชนิดข้อมูลได้ ตัวอย่างเช่น ใช้ตัวควบคุม แกลเลอรี เพื่อแสดงผู้ติดต่อหลายรายโดยมีแต่ละรายการที่แสดงข้อมูลติดต่อที่มีชื่อ ที่อยู่ และหมายเลขโทรศัพท์สําหรับผู้ติดต่อแต่ละราย
เขตข้อมูลแต่ละเขตจะปรากฏในตัวควบคุมที่แยกต่างหากภายในตัวควบคุม แกลเลอรี และคุณสามารถกําหนดค่าตัวควบคุมเหล่านั้นในเทมเพลตได้ด้วย เทมเพลตจะปรากฏเป็นรายการแรกภายในแกลเลอรี:
- ที่ขอบด้านซ้ายของตัวควบคุม แกลเลอรี ตามการวางแนวตามแนวนอน
- และที่ด้านบนของตัวควบคุม แกลเลอรี ในแนวตั้ง/การวางแนว
การเปลี่ยนแปลงใด ๆ ที่คุณทําในเทมเพลตจะปรากฏทั่วทั้งตัวควบคุม แกลเลอรี
เทมเพลตที่กําหนดไว้ล่วงหน้าสําหรับการแสดงรูปภาพและข้อความในแกลเลอรีจะพร้อมใช้งาน และแกลเลอรีสําหรับรายการที่มีความสูงตัวแปร
Limitations
ตัวควบคุมแกลเลอรีมีข้อจํากัดเหล่านี้:
- ถ้าผู้ใช้เลื่อนตัวควบคุม แกลเลอรี ที่มีความสูงแบบยืดหยุ่น ก่อนที่จะโหลดรายการทั้งหมด รายการที่อยู่ในมุมมองปัจจุบันอาจถูกผลักลงและอยู่นอกมุมมองเมื่อการโหลดข้อมูลเสร็จสิ้น เมื่อต้องการหลีกเลี่ยงปัญหานี้ ให้ใช้ตัวควบคุม แกลเลอรี มาตรฐานแทนตัวแปร ความสูงแบบยืดหยุ่น
- ตัวควบคุมต่อไปนี้ไม่ได้รับการสนับสนุนภายในแกลเลอรี:
- คุณไม่สามารถเพิ่มแกลเลอรีภายในแกลเลอรีอื่นได้ถ้าภาพหลังอยู่ในแกลเลอรีอื่นแล้ว ระดับสูงสุดของการซ้อนคือ 2
- TemplateSize ต่ําสุดคือหนึ่ง ซึ่งอาจทําให้ตัวควบคุมใน แกลเลอรี ลอยตัวจากค่า X หรือ Y ที่คาดไว้ เมื่อคุณไม่กําหนดขนาดเทมเพลต
- ถ้าคุณสร้างแอปจากข้อมูลโดยอัตโนมัติ ให้บันทึกแอป แล้วเปิดขึ้นอีกครั้ง แกลเลอรีการเรียกดูอาจไม่แสดงข้อมูลโดยทันที เมื่อต้องการแก้ไขปัญหานี้ ให้พิมพ์อักขระอย่างน้อยหนึ่งตัวลงในกล่องค้นหา แล้วลบข้อความที่คุณพิมพ์ไว้ จากนั้น แกลเลอรีจะแสดงข้อมูลตามที่คาดไว้
- ถ้าแกลเลอรีมีตัวควบคุม ComboBox, DatePicker, Slider หรือ Toggle พร้อม
OnChangeกฎที่แก้ไขแหล่งข้อมูลหรือคอลเลกชันเดียวกันเป็นแกลเลอรี อาจนําไปสู่ประสิทธิภาพที่ไม่คาดคิดหรือลดลง ทั้งนี้เนื่องจากกฎOnChangeที่แก้ไขแหล่งข้อมูลของแกลเลอรีสามารถสร้างรอบการโปรแกรมแก้ไขและการโหลดแบบไม่มีที่สิ้นสุดได้ เพื่อหลีกเลี่ยงปัญหานี้ ไม่ควรใช้OnChangeกฎเมื่อวางตัวควบคุมเหล่านี้ไว้ภายในแกลเลอรี
คุณสมบัติที่สำคัญ
Default – รายการหรือระเบียนจากแหล่งข้อมูลที่จะเลือกในแกลเลอรีเมื่อเริ่มต้นแอป
Items – แหล่งข้อมูลที่ปรากฏในตัวควบคุม เช่น แกลเลอรี รายการ หรือแผนภูมิ
Selected – รายการที่เลือก
คุณสมบัติเพิ่มเติม
AccessibleLabel – ป้ายชื่อของแกลเลอรี (ไม่ใช่รายการที่มี) สําหรับโปรแกรมอ่านหน้าจอ ควรอธิบายว่ารายการข้อมูลคืออะไร
AllItems – รายการที่โหลดในแกลเลอรี ซึ่งอาจ น้อยกว่าจํานวนจริง ของรายการแหล่งข้อมูล อาจโหลดรายการเพิ่มเติมเมื่อมีการเลื่อนแกลเลอรี AllItems ยังประกอบด้วยตัวควบคุมที่ใช้ในแต่ละรายการของแกลเลอรี
AllItemsCount - จํานวนรายการที่โหลดในแกลเลอรี ซึ่งอาจ น้อยกว่าจํานวนจริง ของรายการแหล่งข้อมูล อาจโหลดรายการเพิ่มเติมเมื่อมีการเลื่อนแกลเลอรี
BorderColor – สีเส้นขอบของตัวควบคุม
BorderStyle – กําหนดว่าเส้นขอบของตัวควบคุมจะเป็น เส้นทึบเส้นประเส้นไข่ปลา หรือ ไม่มี
BorderThickness – ความหนาของเส้นขอบของตัวควบคุม
DelayItemLoading - หน่วงเวลาการโหลดรายการ (แถว) จนกว่าจะหลังจากโหลดหน้าจอครั้งแรก
DisplayMode – กําหนดว่าตัวควบคุมจะอนุญาตให้ผู้ใช้ป้อนข้อมูล (แก้ไข) แสดงข้อมูลเท่านั้น (ดู) หรือถูกปิดใช้งาน (ปิดใช้งาน)
Fill – สีพื้นหลังของตัวควบคุม
Height – ระยะห่างระหว่างขอบด้านบนและด้านล่างของตัวควบคุม
ItemAccessibleLabel – ป้ายชื่อของแต่ละรายการแกลเลอรีสําหรับโปรแกรมอ่านหน้าจอ ควรอธิบายว่าแต่ละรายการคืออะไร
LoadingSpinner (ไม่มีตัวควบคุม หรือ ข้อมูล) - เมื่อไม่มี Spinner จะไม่แสดง เมื่อตัวควบคุม | ตัวควบคุม ข้อมูล spinner จะแสดงเมื่อการส่งผ่านการแสดงผลเกิดขึ้นซึ่งส่งผลให้แถวว่างเปล่าที่มองเห็นได้
LoadingSpinnerColor - สีเติมของสปินเนอร์การโหลด ค่าเริ่มต้นถูกตั้งค่าเป็น BorderColor
NavigationStep ระยะห่างของการเลื่อนในแกลเลอรีถ้าคุณสมบัติ ShowNavigation ของแกลเลอรีถูกตั้งค่าเป็น จริง และผู้ใช้เลือกลูกศรนําทางที่ส่วนท้ายของแกลเลอรีนั้น
Selectable – เลือกรายการแกลเลอรีได้หรือไม่ เมื่อตั้งค่าเป็น จริง โปรแกรมอ่านหน้าจอจะระบุแกลเลอรีเป็นรายการที่เลือกได้ และคุณเลือกรายการโดยการเลือกรายการนั้น เมื่อตั้งค่าเป็น false โปรแกรมอ่านหน้าจอจะระบุแกลเลอรีเป็นรายการปกติ และการเลือกรายการจะไม่เลือกรายการนั้น
ShowNavigation – เลือกว่าจะแสดงลูกศรที่ปลายของแกลเลอรีหรือไม่ เพื่อให้ผู้ใช้สามารถเลื่อนผ่านรายการในแกลเลอรีโดยการเลือกลูกศร
ShowScrollbar – เลือกว่าจะแถบเลื่อนหรือไม่ เมื่อผู้ใช้โฮเวอร์เหนือแกลเลอรี
TemplateFill – สีพื้นหลังของแกลเลอรี
TemplatePadding – ระยะห่างระหว่างรายการในแกลเลอรี
TemplateSize – ความสูงของเทมเพลตสําหรับแกลเลอรีแนวตั้ง หรือความกว้างของแม่แบบสําหรับแกลเลอรีตามการวางแนวตามแนวนอน ขนาดต่ําสุดคือหนึ่ง
Transition – เอฟเฟ็กต์ภาพ (Pop, Push หรือ None) เมื่อผู้ใช้โฮเวอร์เหนือรายการในแกลเลอรี
Visible – กําหนดว่าตัวควบคุมแสดงอยู่หรือถูกซ่อนอยู่
Width – ระยะห่างระหว่างขอบด้านซ้ายและด้านขวาของตัวควบคุม
WrapCount – จํานวนของรายการที่แสดงต่อแถวหรือคอลัมน์ที่ยึดตามเค้าโครงแนวนอนหรือแนวตั้ง
X – ระยะห่างระหว่างขอบด้านซ้ายของตัวควบคุมและขอบด้านซ้ายของคอนเทนเนอร์หลักหรือหน้าจอ
Y – ระยะห่างระหว่างขอบด้านบนของตัวควบคุมและขอบด้านบนของคอนเทนเนอร์หลักหรือหน้าจอ
ฟังก์ชันที่เกี่ยวข้อง
Reset( Control ) - รีเซ็ตแกลเลอรีของคุณกลับไปยังสถานะเริ่มต้น สถานะเริ่มต้นรวมถึงการเลื่อนไปยังรายการแรกและเลือกรายการแรกหรือค่าเริ่มต้นถ้ามี
Note
ตัวควบคุมการรีเซ็ตจะไม่รีเซ็ตระดับลูกทั้งหมดของแกลเลอรีซ้ํา
ตัวอย่าง
แสดงและกรองข้อมูล
รับข้อมูลจากผู้ใช้
แนวทางการช่วยสําหรับการเข้าถึง
ความคมชัดของสี
ถ้าการคลิกที่ใดก็ได้ในรายการแกลเลอรีมีไว้เพื่อเลือก ต้องมีความคมชัดของสีที่เพียงพอระหว่าง:
- BorderColor และสีภายนอกแกลเลอรี (ถ้ามีเส้นขอบ)
- Fill และสีภายนอกแกลเลอรี (ถ้าไม่มีเส้นขอบ)
การสนับสนุนตัวอ่านหน้าจอ
จําเป็นต้องมี AccessibleLabel
Note
โปรแกรมอ่านหน้าจอจะประกาศเมื่อรายการในแกลเลอรีเปลี่ยน ยังมีการกล่าวถึง AccessibleLabel ซึ่งให้บริบทสําหรับประกาศและจะสําคัญมากยิ่งขึ้นเมื่อมีหลายแกลเลอรีบนหน้าจอเดียวกัน
เมื่อรายการแกลเลอรีมีตัวควบคุมหลายตัว ให้ใช้ ItemAccessibleLabel เพื่อแสดงเนื้อหาของรายการแกลเลอรี
ตั้งค่าของ สามารถเลือกได้ เป็น จริง ถ้าคุณต้องการให้ผู้ใช้เลือกรายการแกลเลอรี มิฉะนั้น ให้ตั้งค่านั้นเป็น เท็จ
เมื่อรายการแกลเลอรีมีตัวควบคุมหลายตัว ให้ใช้ ItemAccessibleLabel เพื่อให้ข้อมูลสรุปของเนื้อหาของรายการแกลเลอรี
สามารถเลือกได้ ควรตั้งค่าอย่างเหมาะสม โดยขึ้นอยู่กับว่าผู้ใช้มีไว้เพื่อเลือกรายการแกลเลอรีหรือไม่
การสนับสนุนแป้นพิมพ์
พิจารณาการตั้งค่า ShowScrollbar เป็น true บนอุปกรณ์แบบหน้าจอสัมผัสส่วนใหญ่ แถบเลื่อนจะไม่แสดงจนกว่าจะเริ่มการเลื่อน
ถ้าการคลิกที่ใดก็ได้ในรายการแกลเลอรีมีไว้เพื่อเลือก ต้องมีวิธีสําหรับผู้ใช้คีย์บอร์ดเพื่อเลือกรายการแกลเลอรีด้วย ตัวอย่างเช่น การเพิ่ม ปุ่ม ที่มีคุณสมบัติ OnSelect ที่ตั้งค่าเป็น Select(Parent)
Note
ไม่พิจารณาตัวควบคุมภายนอกแกลเลอรีตามลําดับการนําทางของแป้นพิมพ์ภายในแกลเลอรี ตัวควบคุม TabIndex ภายในแกลเลอรีจะถูกจํากัดขอบเขต ดู คุณสมบัติการช่วยสําหรับการเข้าถึง เพื่อเรียนรู้เพิ่มเติม
ดูเพิ่มเติม
ใช้ DelayItemLoading และ Loading spinner เพื่อปรับปรุงประสิทธิภาพการทํางานในแกลเลอรี