Aracılığıyla paylaş


MenuItem Denetim Türü

Bu konu, MenuItem denetim türü için Microsoft UI Otomasyonu desteği hakkında bilgi sağlar.

Menü denetimi, komutlar ve olay işleyicileriyle ilişkili öğelerin hiyerarşik olarak düzenlenmesine olanak tanır. Tipik bir Windows uygulamasında, menü çubuğunda çeşitli menü öğeleri (Dosya, Düzenle ve Pencere) bulunur ve her menü öğesi bir menü görüntüler. Menü, ek menü öğelerini görüntülemek veya tıklandığında belirli bir eylemi gerçekleştirmek için genişletilebilen bir menü öğesi koleksiyonu (Yeni , Aç ve Kapat) içerir.

Aşağıdaki bölümlerde, MenuItem denetim türü için gerekli UI Otomasyonu ağaç yapısı, özellikleri, denetim desenleri ve olayları tanımlanmıştır. UI Otomasyonu gereksinimleri, UI çerçevesinin/platformunun denetim türleri ve denetim desenleri için UI Otomasyonu desteğini tümleştirdiği tüm menü öğesi denetimlerine uygulanır.

Bu konu aşağıdaki bölümleri içerir.

Tipik Ağaç Yapısı

Aşağıdaki tabloda, menü öğesi denetimleriyle ilgili ui Otomasyonu ağacının tipik bir denetimi ve içerik görünümü gösterilir ve her görünümde nelerin içerilebileceğini açıklar. UI Otomasyonu ağacı hakkında daha fazla bilgi için bkz. UI Otomasyon Ağacına Genel Bakış.

Denetim Görünümü İçerik Görünümü
  • MenuItem "Yardım"
    • Menü (Yardım menü öğesinin alt menüsü)
      • MenuItem "Yardım Konuları"
      • MenuItem "Not Defteri Hakkında"
  • MenuItem "Yardım"
    • MenuItem "Yardım Konuları"
    • MenuItem "Not Defteri Hakkında"

 

Menü öğesi denetiminin denetim görünümü, yukarıda gösterilen UI Otomasyonu ağaç yapısına sahiptir. Yapıyı daha iyi göstermek için menü çubuğundaki Yardım için menü öğesinin eklendiğini unutmayın.

İçerik görünümü için Menü, son kullanıcıya anlamlı bilgiler iletmediğinden UI Otomasyonu ağacında bulunmaz.

İlgili Özellikler

Aşağıdaki tabloda, değeri veya tanımı özellikle MenuItem denetim türüyle ilgili olan UI Otomasyonu özellikleri listeleniyor. UI Otomasyonu özellikleri hakkında daha fazla bilgi için bkz. UI Automation Öğelerinden Özellikleri Alma.

UI Otomasyonu Özelliği Değer Notlar
UIA_AutomationIdPropertyId Notlara bakın. Bu özelliğin değeri, UI Otomasyonu ağacının ham görünümündeki tüm eş öğeler arasında benzersiz olmalıdır. Öğesinin kullanıcı arabiriminin farklı örnekleri arasında tutarlı olduğu biliniyorsa, menü öğesi için AutomationId özelliğini ayırın. Menü öğesi dinamik olarak doldurulmuşsa ve tahmin edilebilir değilse, AutomationId özelliğini boş bırakın.
UIA_BoundingRectanglePropertyId Notlara bakın. Denetimin tamamını içeren en dıştaki dikdörtgen.
UIA_ClickablePointPropertyId Notlara bakın. Sınırlayıcı bir dikdörtgen varsa desteklenir. Sınırlayıcı dikdörtgenin içindeki her nokta tıklanabilir değilse ve öğesi özel isabet testi gerçekleştiriyorsa, geçersiz kılın ve tıklanabilir bir nokta sağlayın.
UIA_ControlTypePropertyId MenuItem
UIA_IsContentElementPropertyId DOĞRU Menü öğesi denetimi her zaman UI Otomasyonu ağacının içerik görünümüne eklenir.
UIA_IsControlElementPropertyId DOĞRU Menü öğesi denetimi her zaman UI Otomasyonu ağacının denetim görünümüne eklenir.
UIA_IsKeyboardFocusablePropertyId Notlara bakın. Denetim klavye odağını alabiliyorsa bu özelliği desteklemesi gerekir.
UIA_LocalizedControlTypePropertyId Notlara bakın. MenuItem denetim türüne karşılık gelen yerelleştirilmiş dize. Varsayılan değer, en-US veya İngilizce (ABD) için "menü öğesi"dir.
UIA_NamePropertyId Notlara bakın. Menü öğesi denetiminin adı, onu etiketlemek için kullanılan metindir.

 

Gerekli Denetim Desenleri

Aşağıdaki tabloda, menü öğesi denetimleri tarafından desteklenmesi için gereken UI Otomasyonu denetim desenleri listelenmektedir. Denetim desenleri hakkında daha fazla bilgi için bkz. UI Otomasyonu Denetim Desenlerine Genel Bakış.

Denetim Deseni Destek Notlar
IExpandCollapseProvider -Sına bağ -lıdır Denetim genişletilebilir veya daraltılabilirse, IExpandCollapseProvideruygulayın.
IInvokeProvider -Sına bağ -lıdır Denetim tek bir eylem veya komut yürütürse, IInvokeProvideruygulayın.
ISelectionItemProvider -Sına bağ -lıdır Denetim, menü öğeleri arasındaki seçenekler listesinden seçim yapmak için kullanılıyorsa, ISelectionItemProvideruygulayın.
IToggleProvider -Sına bağ -lıdır Denetim açılabilir veya kapatılabilir bir seçeneği temsil ederse, IToggleProvideruygulayın.

 

Gerekli Olaylar

Aşağıdaki tabloda, menü öğesi denetimlerinin desteklemesi gereken UI Otomasyonu olayları listelenir. Olaylar hakkında daha fazla bilgi için bkz. UI Otomasyonu Olaylarına Genel Bakış.

UI Otomasyonu Olayı Notlar
UIA_AutomationFocusChangedEventId
özelliği değiştirilmiş olayı UIA_BoundingRectanglePropertyId.
UIA_ExpandCollapseExpandCollapseStatePropertyId özelliği değiştirilmiş olay. Denetim ExpandCollapse denetim desenini destekliyorsa, bu olayı desteklemesi gerekir.
UIA_Invoke_InvokedEventId Denetim Invoke denetim desenini destekliyorsa, bu olayı desteklemesi gerekir.
özelliği değiştirilmiş olayı UIA_IsEnabledPropertyId. Denetim IsEnabledözelliğini destekliyorsa bu olayı desteklemesi gerekir.
özelliği değiştirilmiş olayı UIA_IsOffscreenPropertyId. Denetim IsOffscreen özelliğini destekliyorsa, bu olayı desteklemesi gerekir.
UIA_SelectionItem_ElementAddedToSelectionEventId Denetim SelectionItem denetim desenini destekliyorsa, bu olayı desteklemesi gerekir.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Denetim SelectionItem denetim desenini destekliyorsa, bu olayı desteklemesi gerekir.
UIA_SelectionItem_ElementSelectedEventId Denetim SelectionItem denetim desenini destekliyorsa, bu olayı desteklemesi gerekir.
UIA_StructureChangedEventId
özelliği değiştirilmiş olayı UIA_ToggleToggleStatePropertyId. Denetim Geçiş denetim desenini destekliyorsa bu olayı desteklemesi gerekir.

 

Eski Sorunlar

Microsoft Win32 menü öğeleri için Geçiş denetim düzeni yalnızca bir menü öğesi işaretlendiğinde desteklenir ve Geçiş denetimi düzeni için destek gerekip gerekmediğini program aracılığıyla belirlemek mümkündür. Win32 menü öğesi denetlenip denetlenemeyeceğini göstermediğinden, menü öğesi işaretlenmediğinde Invoke denetim düzeni desteklenir. Yalnızca Geçiş denetimi düzenini desteklemek için gereken menü öğeleri için bile Invoke denetim düzeni her zaman desteklenir. Bu nedenle, Invoke denetim desenini destekleyen bir menü öğesi (menü öğesi işaretlenmediğinde) artık işaretlendiğinde bu düzeni desteklemediğinde istemcilerin kafası karışmaz.

kavramsal

UI Otomasyonu Denetim Türlerine Genel Bakış

UI Otomasyonuna Genel Bakış