Peer navigationAfter locating an automation peer, a UI Automation clie การแปล - Peer navigationAfter locating an automation peer, a UI Automation clie ไทย วิธีการพูด

Peer navigationAfter locating an au

Peer navigation

After locating an automation peer, a UI Automation client can navigate the peer structure of an app by calling the peer object's GetChildren and GetParent methods. Navigation among UI elements within a control is supported by the peer's implementation of the GetChildrenCore method. The UI Automation system calls this method to build up a tree of subelements contained within a control; for example, list items in a list box. The default GetChildrenCore method in FrameworkElementAutomationPeer traverses the visual tree of elements to build the tree of automation peers. Custom controls can override this method to expose a different representation of child elements to automation clients, returning the automation peers of elements that convey information or allow user interaction.


Native automation support for text patterns

Some of the default UWP app automation peers provide control pattern support for the text pattern (PatternInterface.Text). But they provide this support through native methods, and the peers involved won't note the ITextProvider interface in the (managed) inheritance. Still, if a managed or non-managed UI Automation client queries the peer for patterns, it will report support for the text pattern, and provide behavior for parts of the pattern when client APIs are called.

If you intend to derive from one of the UWP app text controls and also create a custom peer that derives from one of the text-related peers, check the Remarks sections for the peer to learn more about any native-level support for patterns. You can access the native base behavior in your custom peer if you call the base implementation from your managed provider interface implementations, but it's difficult to modify what the base implementation does because the native interfaces on both the peer and its owner control aren't exposed. Generally you should either use the base implementations as-is (call base only) or completely replace the functionality with your own managed code and don't call the base implementation. The latter is an advanced scenario, you'll need good familiarity with the text services framework being used by your control in order to support the accessibility requirements when using that framework.


AutomationProperties.AccessibilityView

In addition to providing a custom peer, you can also adjust the tree view representation for any control instance, by setting AutomationProperties.AccessibilityView in XAML. This isn't implemented as part of a peer class, but we'll mention it here because it's germane to overall accessibility support either for custom controls or for templates you customize.

The main scenario for using AutomationProperties.AccessibilityView is to deliberately omit certain controls in a template from the UI Automation views, because they don't meaningfully contribute to the accessibility view of the entire control. To prevent this, set AutomationProperties.AccessibilityView to "Raw". For more info, see AutomationProperties.AccessibilityView.


Throwing exceptions from automation peers

The APIs that you are implementing for your automation peer support are permitted to throw exceptions. It's expected any UI Automation clients that are listening are robust enough to continue on after most exceptions are thrown. In all likelihood that listener is looking at an all-up automation tree that includes apps other than your own, and it's an unacceptable client design to bring down the entire client just because one area of the tree threw a peer-based exception when the client called its APIs.

For parameters that are passed in to your peer, it's acceptable to validate the input, and for example throw ArgumentNullException if it was passed null and that's not a valid value for your implementation. However, if there are subsequent operations performed by your peer, remember that the peer's interactions with the hosting control have something of an asynchronous character to them. Anything a peer does won't necessarily block the UI thread in the control (and it probably shouldn't). So you could have situations where an object was available or had certain properties when the peer was created or when an automation peer method was first called, but in the meantime the control state has changed. For these cases, there are two dedicated exceptions that a provider can throw:
0/5000
จาก: -
เป็น: -
ผลลัพธ์ (ไทย) 1: [สำเนา]
คัดลอก!
นำทางเพียร์หลังจากหาเพียร์อัตโนมัติ UI Automation ไคลเอนต์สามารถไปโครงสร้างเพียร์แอ โดยการเรียกวิธีของวัตถุ GetChildren และ GetParent เพียร์ นำทางระหว่างองค์ประกอบ UI ภายในตัวควบคุมได้รับการสนับสนุนจากการทำงานของเพียร์ของวิธี GetChildrenCore ระบบ UI Automation เรียกวิธีการนี้จะสร้างต้นไม้ขององค์ประกอบย่อยที่อยู่ภายในตัวควบคุม เช่น เลือกรายการในกล่องรายการ วิธี GetChildrenCore การเริ่มต้นใน FrameworkElementAutomationPeer ดใด ๆ ต้นไม้ภาพขององค์ประกอบในการสร้างต้นไม้ของเพื่อนอัตโนมัติ คอนโทรลแบบกำหนดเองสามารถแทนวิธีการนี้เพื่อให้การแสดงที่แตกต่างกันขององค์ประกอบลูกไปยังไคลเอนต์ทำงานอัตโนมัติ กลับเพื่อนทำงานอัตโนมัติขององค์ประกอบที่ถ่ายทอดข้อมูล หรืออนุญาตให้ผู้ใช้สนับสนุนท้องถิ่นทำงานอัตโนมัติสำหรับรูปแบบข้อความของเพื่อนทำงานอัตโนมัติของ app ด้วยครับเริ่มต้นสามารถให้การสนับสนุนรูปแบบควบคุมสำหรับรูปแบบข้อความ (PatternInterface.Text) แต่จะให้การสนับสนุนนี้ผ่านวิธีการดั้งเดิม และเพื่อนที่เกี่ยวข้องจะไม่ทราบติดต่อ ITextProvider ในการสืบทอด (จัดการ) ยังคง ถ้ามีการจัดการ หรือ จัดการไม่ใช่ UI Automation ไคลเอนต์แบบสอบถามเพียร์ลาย จะรายงานการสนับสนุนสำหรับรูปแบบข้อความ และมีลักษณะการทำงานสำหรับส่วนของรูปแบบเมื่อไคลเอ็นต์เรียก APIsถ้าคุณต้องการจากหนึ่งในตัวควบคุมข้อความ app ด้วยครับ และยัง สร้างแบบเพียร์กำหนดเองที่ได้จากเพื่อนเป็นข้อความอย่างใดอย่างหนึ่ง ตรวจสอบในส่วนหมายเหตุสำหรับเพียร์เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการสนับสนุนระดับพื้นเมืองลาย คุณสามารถเข้าถึงลักษณะการทำงานพื้นฐานดั้งเดิมในเพียร์กำหนดเองของคุณหากคุณเรียกใช้งานฐานผู้ให้บริการจัดการใช้งานอินเทอร์เฟซ แต่ยากที่จะปรับเปลี่ยนการใช้งานพื้นฐานอะไรเนื่องจากอินเทอร์เฟซภาษาบนเพียร์และการควบคุมเจ้าไม่ได้สัมผัส โดยทั่วไปคุณควรใช้การใช้งานเป็นฐาน-จะเรียกฐานเท่านั้น) หรือทั้งหมดแทนการทำงานของคุณเองการจัดการรหัส และไม่เรียกการใช้งานพื้นฐาน หลังคือ สถานการณ์ขั้นสูง คุณจะต้องการส่งบริการข้อความถูกใช้ โดยตัวควบคุมของคุณเพื่อรองรับความต้องการการเข้าถึงเมื่อใช้ framework ที่คุ้นเคยดีAutomationProperties.AccessibilityViewนอกเหนือจากเพียร์กำหนดเอง คุณสามารถปรับการแสดงมุมมองต้นไม้สำหรับอินสแตนซ์ใด ๆ ของตัวควบคุม ตั้งค่า AutomationProperties.AccessibilityView ใน XAML นี้ไม่ได้นำมาใช้เป็นส่วนหนึ่งของแบบเพียร์ แต่เราจะพูดถึงมันนี่ เพราะมันเป็น germane โดยรวมการสนับสนุน สำหรับตัวควบคุมแบบกำหนดเอง หรือ สำหรับแม่แบบที่คุณกำหนดเองถึงหลักการใช้ AutomationProperties.AccessibilityView เป็นการ จงใจละเว้นบางตัวควบคุมในแม่แบบจากมุมมองที่ UI Automation เนื่องจากพวกเขาไม่มีได้นำมุมมองการเข้าถึงของตัวควบคุมทั้งหมด เพื่อป้องกันการ ตั้ง AutomationProperties.AccessibilityView การ "วัตถุดิบ" สำหรับข้อมูลเพิ่มเติม ดู AutomationProperties.AccessibilityViewข้อยกเว้นการขว้างปาจากระบบอัตโนมัติApi ที่คุณใช้สำหรับการทำงานอัตโนมัติสนับสนุนเพียร์ทิ้งยกเว้นได้ คาดว่า ไคลเอนต์ UI Automation ที่ฟังจะทนทานต่อเนื่องไปหลังจากข้อยกเว้นส่วนใหญ่จะถูกออก ในทุกโอกาส ที่ฟังที่ดูต้นไม้อัตโนมัติขึ้นทั้งหมดที่มีแอปพลิเคชันอื่นที่ไม่ใช่ของคุณเอง และมันเป็นแบบไคลเอ็นต์ไม่สามารถยอมรับการนำลงไคลเอ็นต์ทั้งหมดเนื่องจากพื้นที่หนึ่งของต้นไม้โยนแบบเพียร์ข้อยกเว้นเมื่อไคลเอ็นต์เรียก APIs ของสำหรับพารามิเตอร์ที่ผ่านในเพียร์ของคุณ การตรวจสอบการป้อนข้อมูล และโยนเข้าเมลล์ไม่ได้เช่น ถ้าถูกส่งผ่านเป็น null และที่ไม่ใช่ค่าที่ถูกต้องสำหรับการนำไปใช้ก่อนได้ อย่างไรก็ตาม ถ้ามีการ ดำเนินการ โดยคุณเพียร์ จำได้ว่า เพียร์โต้ตอบกับตัวควบคุมโฮสต์มีอักขระแบบอะซิงโครนัสให้บางสิ่งบางอย่าง อะไรแบบเพียร์ไม่จำเป็นจะไม่บล็อกเธรด UI ในการควบคุม (และมันอาจจะไม่ควร) ดังนั้น คุณอาจมีกรณีที่วัตถุมีอยู่ หรือมีคุณสมบัติบางอย่าง เมื่อสร้างเพียร์ หรือ เมื่อก่อนเรียกวิธีการเพียร์อัตโนมัติ แต่ในระหว่างนี้ มีการเปลี่ยนแปลงสถานะตัวควบคุม ในกรณีเหล่านี้ มีข้อยกเว้นเฉพาะสองที่สามารถโยนผู้ให้บริการ:
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 2:[สำเนา]
คัดลอก!
นำทาง Peer หลังจากหาที่เพียร์อัตโนมัติลูกค้า UI อัตโนมัติสามารถนำทางโครงสร้างเพียร์ของแอปโดยการเรียกวัตถุของขุนนางและ GetChildren GetParent วิธี นำร่องในหมู่องค์ประกอบ UI อยู่ในการควบคุมได้รับการสนับสนุนโดยการดำเนินงานของขุนนางของวิธีการ GetChildrenCore ระบบการทำงานอัตโนมัติ UI เรียกวิธีการนี้จะสร้างขึ้นต้นไม้ขององค์ประกอบย่อยที่มีอยู่ภายในการควบคุมนั้น ตัวอย่างเช่นรายการในกล่องรายการ วิธีการเริ่มต้นใน GetChildrenCore FrameworkElementAutomationPeer ลัดเลาะภาพต้นไม้ขององค์ประกอบในการสร้างต้นไม้ของคนรอบข้างอัตโนมัติ ควบคุมที่กำหนดเองสามารถแทนที่วิธีการนี้จะเปิดเผยการแสดงที่แตกต่างกันขององค์ประกอบของเด็กให้กับลูกค้าอัตโนมัติกลับทำเนียบระบบอัตโนมัติขององค์ประกอบที่นำข้อมูลหรืออนุญาตให้ผู้ใช้โต้ตอบ. อัตโนมัติสนับสนุนพื้นเมืองสำหรับรูปแบบข้อความบางส่วนของเพื่อนร่วมงานแอปเริ่มต้น UWP อัตโนมัติให้การสนับสนุนรูปแบบการควบคุม สำหรับรูปแบบข้อความ (PatternInterface.Text) แต่พวกเขาให้การสนับสนุนนี้ผ่านวิธีพื้นเมืองและเพื่อนที่เกี่ยวข้องจะไม่ทราบอินเตอร์เฟซ ITextProvider ใน (จัดการ) มรดก ยังถ้ามีการจัดการหรือลูกค้าที่ไม่ได้รับการจัดการ UI อัตโนมัติ queries เพียร์สำหรับรูปแบบก็จะรายงานการสนับสนุนสำหรับรูปแบบข้อความและให้พฤติกรรมสำหรับชิ้นส่วนของรูปแบบเมื่อ APIs ลูกค้าจะเรียกว่า. ถ้าคุณตั้งใจที่จะได้รับจากหนึ่งใน การควบคุมแอปพลิเคข้อความ UWP และยังสร้างเพียร์ที่กำหนดเองที่มาจากหนึ่งในเพื่อนข้อความที่เกี่ยวข้องกับการตรวจสอบข้อสังเกตส่วนสำหรับเพียร์เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการสนับสนุนระดับพื้นเมืองสำหรับรูปแบบ คุณสามารถเข้าถึงพฤติกรรมฐานพื้นเมืองในเพียร์กำหนดเองของคุณถ้าคุณโทรดำเนินการฐานจากการใช้งานอินเตอร์เฟซผู้ให้บริการการจัดการของคุณ แต่มันเป็นเรื่องยากที่จะปรับเปลี่ยนสิ่งที่ดำเนินการฐานไม่เพราะการเชื่อมต่อพื้นเมืองทั้งเพียร์และการควบคุมเจ้าของไม่ได้สัมผัส . โดยทั่วไปคุณก็ควรจะใช้การใช้งานฐานตามที่เป็นฐาน (โทรเท่านั้น) หรือแทนที่การทำงานที่มีการจัดการรหัสของคุณเองและไม่ได้เรียกฐานการดำเนินงาน หลังเป็นสถานการณ์ขั้นสูงคุณจะต้องคุ้นเคยดีกับกรอบการบริการข้อความที่ถูกใช้โดยการควบคุมของคุณในการสั่งซื้อเพื่อรองรับความต้องการการเข้าถึงเมื่อใช้กรอบที่. AutomationProperties.AccessibilityView นอกจากการให้เพียร์ที่กำหนดเองคุณยังสามารถปรับ การแสดงมุมมองแบบต้นไม้เช่นการควบคุมใด ๆ โดยการตั้งค่า AutomationProperties.AccessibilityView ใน XAML นี้ไม่ได้ถูกนำมาใช้เป็นส่วนหนึ่งของชั้นเพียร์ แต่เราจะพูดถึงมันที่นี่เพราะมันใกล้ชิดเพื่อสนับสนุนการเข้าถึงโดยรวมทั้งการควบคุมที่กำหนดเองหรือสำหรับแม่แบบคุณสามารถปรับแต่ง. สถานการณ์หลักสำหรับการใช้ AutomationProperties.AccessibilityView คือการจงใจละเว้นการควบคุมบางอย่าง ในแม่แบบจากมุมมอง UI อัตโนมัติเพราะพวกเขาไม่ได้มีความหมายนำไปสู่การเข้าถึงมุมมองของการควบคุมทั้งหมด เพื่อป้องกันการนี้ตั้ง AutomationProperties.AccessibilityView ที่ "ดิบ" สำหรับข้อมูลเพิ่มเติมโปรดดูที่ AutomationProperties.AccessibilityView. โยนข้อยกเว้นจากระบบอัตโนมัติทำเนียบAPIs ที่คุณมีการดำเนินการสำหรับการสนับสนุนระบบอัตโนมัติเพียร์ของคุณจะได้รับอนุญาตที่จะโยนข้อยกเว้น เป็นที่คาดหวังใด ๆ ลูกค้า UI ทำงานอัตโนมัติที่กำลังฟังเพลงที่มีประสิทธิภาพมากพอที่จะดำเนินการต่อไปหลังจากที่ยกเว้นส่วนใหญ่จะโยน ในทุกโอกาสที่ผู้ฟังที่กำลังมองหาต้นไม้อัตโนมัติทั้งหมดขึ้นที่มีปพลิเคชันอื่น ๆ กว่าของคุณเองและก็การออกแบบของลูกค้าที่ยอมรับไม่ได้ที่จะนำมาลงไคลเอ็นต์ทั้งหมดเพียงเพราะพื้นที่หนึ่งของต้นไม้โยนข้อยกเว้น peer-based เมื่อลูกค้า เรียกใช้ API ของ. สำหรับพารามิเตอร์ที่ส่งผ่านไปยังเพื่อนของคุณก็เป็นที่ยอมรับในการตรวจสอบการป้อนข้อมูลและตัวอย่างเช่นโยน ArgumentNullException ถ้ามันก็ผ่านไปโมฆะและที่ไม่ได้ค่าที่ถูกต้องสำหรับการดำเนินงานของคุณ อย่างไรก็ตามหากมีการดำเนินการภายหลังการดำเนินการโดยเพียร์ของคุณจำไว้ว่าการมีปฏิสัมพันธ์ของขุนนางที่มีการควบคุมโฮสติ้งมีบางสิ่งบางอย่างของตัวละครที่ไม่ตรงกันกับพวกเขา สิ่งใดไม่เพียร์จะไม่จำเป็นต้องปิดกั้นหัวข้อ UI ในการควบคุม (และมันอาจจะไม่ได้) ดังนั้นคุณอาจมีสถานการณ์ที่วัตถุที่มีอยู่หรือมีคุณสมบัติบางอย่างเมื่อเพียร์ที่ถูกสร้างขึ้นหรือเมื่อวิธีการอัตโนมัติเพียร์ถูกเรียกว่าเป็นครั้งแรก แต่ในขณะเดียวกันรัฐควบคุมที่มีการเปลี่ยนแปลง สำหรับกรณีนี้มีสองข้อยกเว้นเฉพาะที่ผู้ให้บริการสามารถโยน:






















การแปล กรุณารอสักครู่..
 
ภาษาอื่น ๆ
การสนับสนุนเครื่องมือแปลภาษา: กรีก, กันนาดา, กาลิเชียน, คลิงออน, คอร์สิกา, คาซัค, คาตาลัน, คินยารวันดา, คีร์กิซ, คุชราต, จอร์เจีย, จีน, จีนดั้งเดิม, ชวา, ชิเชวา, ซามัว, ซีบัวโน, ซุนดา, ซูลู, ญี่ปุ่น, ดัตช์, ตรวจหาภาษา, ตุรกี, ทมิฬ, ทาจิก, ทาทาร์, นอร์เวย์, บอสเนีย, บัลแกเรีย, บาสก์, ปัญจาป, ฝรั่งเศส, พาชตู, ฟริเชียน, ฟินแลนด์, ฟิลิปปินส์, ภาษาอินโดนีเซี, มองโกเลีย, มัลทีส, มาซีโดเนีย, มาราฐี, มาลากาซี, มาลายาลัม, มาเลย์, ม้ง, ยิดดิช, ยูเครน, รัสเซีย, ละติน, ลักเซมเบิร์ก, ลัตเวีย, ลาว, ลิทัวเนีย, สวาฮิลี, สวีเดน, สิงหล, สินธี, สเปน, สโลวัก, สโลวีเนีย, อังกฤษ, อัมฮาริก, อาร์เซอร์ไบจัน, อาร์เมเนีย, อาหรับ, อิกโบ, อิตาลี, อุยกูร์, อุสเบกิสถาน, อูรดู, ฮังการี, ฮัวซา, ฮาวาย, ฮินดี, ฮีบรู, เกลิกสกอต, เกาหลี, เขมร, เคิร์ด, เช็ก, เซอร์เบียน, เซโซโท, เดนมาร์ก, เตลูกู, เติร์กเมน, เนปาล, เบงกอล, เบลารุส, เปอร์เซีย, เมารี, เมียนมา (พม่า), เยอรมัน, เวลส์, เวียดนาม, เอสเปอแรนโต, เอสโทเนีย, เฮติครีโอล, แอฟริกา, แอลเบเนีย, โคซา, โครเอเชีย, โชนา, โซมาลี, โปรตุเกส, โปแลนด์, โยรูบา, โรมาเนีย, โอเดีย (โอริยา), ไทย, ไอซ์แลนด์, ไอร์แลนด์, การแปลภาษา.

Copyright ©2025 I Love Translation. All reserved.

E-mail: