Liste Denetim Türü İçin UI Otomasyon Desteği

Not

Bu belgeler, ad alanında tanımlanan yönetilen UI Otomasyonu sınıflarını kullanmak isteyen .NET Framework geliştiricilerine System.Windows.Automation yöneliktir. UI Otomasyonu hakkında en son bilgiler için bkz. Windows Otomasyonu API'si: UI Otomasyonu.

Bu konu, Liste denetim türü için UI Otomasyonu desteği hakkında bilgi sağlar. UI Otomasyonu denetim türü, bir denetimin özelliğini kullanabilmesi için karşılaması gereken bir koşul kümesidirControlTypeProperty. Koşullar, UI Otomasyonu ağaç yapısı, UI Otomasyonu özellik değerleri ve denetim desenleri için belirli yönergeleri içerir.

Liste denetim türü, düz bir grup veya öğe grubunu düzenlemenin bir yolunu sağlar ve kullanıcının bu öğelerden birini veya daha fazlasını seçmesine olanak tanır. Liste denetim türü, içerebileceği alt öğe türleriyle ilgili gevşek bir kısıtlamaya sahiptir. Bu, UI Otomasyonu sağlayıcılarının seçim kapsayıcıları için iyi bilinen bir öğeyi desteklemesini sağlar.

Aşağıdaki bölümlerdeki UI Otomasyonu gereksinimleri, Windows Presentation Foundation (WPF), Win32 veya Windows Forms olsun Liste denetim türünü uygulayan tüm denetimler için geçerlidir. Liste kapsayıcısı denetimleri, Liste denetim türünü uygulayan denetimlerin bir örneğidir.

Gerekli UI Otomasyonu Ağaç Yapısı

Aşağıdaki tabloda, liste denetimleriyle ilgili olan UI Otomasyonu ağacının iki görünümü gösterilir ve her görünümde nelerin içerilebileceğini açıklar. Denetim görünümü yalnızca denetim olan öğeleri içerir ve içerik görünümü ağaçtan gereksiz bilgileri kaldırır. Örneğin, birleşik giriş kutusunu etiketlemek için kullanılan metin denetimi olarak ComboBox NamePropertygösterilir. Metin denetimi zaten denetim görünümü aracılığıyla bu şekilde kullanıma sunulduğundan, iki kez kullanıma sunulmak gereksizdir; bu nedenle içerik görünümünden kaldırılır. UI Otomasyonu ağacı hakkında daha fazla bilgi için bkz. UI Otomasyonu Ağacına Genel Bakış.

Denetim Görünümü İçerik Görünümü
Denetimlere karşılık gelen öğeleri içerir. Yardımcı teknolojilerin son kullanıcıya en küçük anlamlı bilgi kümesiyle çalışması için ağaçtan yedekli bilgileri kaldırır.
Liste

- DataItem (0 veya daha fazla)
- ListItem (0 veya daha fazla)
- Grup (0 veya daha fazla)
- ScrollBar (0, 1 veya 2)
Liste

- DataItem (0 veya daha fazla)
- ListItem (0 veya daha fazla)
- Grup (0 veya daha fazla)

Liste denetim türünü (liste denetimi gibi) uygulayan bir denetimin denetim görünümü şunlardan oluşur:

  • Liste denetimindeki sıfır veya daha fazla öğe (öğeler Liste Öğesi veya Veri Öğesi denetim türlerini temel alabilir).

  • Liste denetimi içinde sıfır veya daha fazla grup denetimi.

  • Sıfır, bir veya iki kaydırma çubuğu denetimi.

Liste denetim türünü (liste denetimi gibi) uygulayan bir denetimin içerik görünümü şunlardan oluşur:

  • Liste denetimindeki sıfır veya daha fazla öğe (öğeler Liste Öğesi veya Veri Öğesi denetim türlerini temel alabilir).

  • Liste denetiminde sıfır veya daha fazla grup.

Liste denetiminin, birlikte gruplandırılmak dışında hiyerarşik ilişkisi olan öğeleri olmamalıdır. Öğelerin UI Otomasyonu ağacında alt öğeleri varsa, liste kapsayıcısı Ağaç denetim türünü temel almalıdır.

Liste denetimindeki seçilebilir öğeler, liste denetiminin UI Otomasyonu ağacındaki alt öğelerden kullanılabilir. Liste denetimindeki tüm öğeler aynı seçim grubuna ait olmalıdır. Listedeki seçilebilir öğeler ListItem (DataItem yerine) denetim türleri olarak gösterilmelidir.

Gerekli UI Otomasyonu Özellikleri

Aşağıdaki tabloda, değeri veya tanımı özellikle liste denetimleriyle ilgili olan UI Otomasyonu özellikleri listeleniyor. UI Otomasyonu özellikleri hakkında daha fazla bilgi için bkz. İstemciler için Özellikler UI Otomasyonu.

UI Otomasyonu Özelliği Değer Notlar
AutomationIdProperty Notlara bakın. Bu özelliğin değerinin bir uygulamadaki tüm denetimlerde benzersiz olması gerekir.
BoundingRectangleProperty Notlara bakın. Denetimin tamamını içeren en dıştaki dikdörtgen.
ClickablePointProperty Notlara bakın. Liste denetiminin tıklanabilir bir noktası varsa (listenin odaklanmasına neden olmak için tıklanabilen bir nokta), bu nokta bu özellik aracılığıyla gösterilmelidir.

özelliğinin IsOffScreen değeri true ise, NoClickablePointException değeri oluşturulur.
IsKeyboardFocusableProperty Notlara bakın. Denetim klavye odağını alabiliyorsa bu özelliği desteklemesi gerekir.
NameProperty Notlara bakın. Liste denetiminin Name özelliğinin değeri, kullanıcıdan seçim yapmasının istenildiği seçenek kategorisini iletmelidir. Bu özellik genellikle adını statik bir metin etiketinden alır. Statik metin etiketi yoksa uygulama geliştiricisinin Name özelliği için bir değer kullanıma sunması gerekir.

Bu özelliğin liste denetimleri için gerekli olmadığı tek zaman, denetimin başka bir denetimin alt ağacı içinde kullanılmasıdır.
LabeledByProperty Notlara bakın. Statik bir metin etiketi varsa, bu özelliğin bu denetime bir başvuru kullanıma sunması gerekir.
ControlTypeProperty Liste Bu değer tüm ui çerçeveleri için aynıdır.
LocalizedControlTypeProperty "list" Liste denetim türüne karşılık gelen yerelleştirilmiş dize.
IsContentElementProperty True Liste denetimi her zaman UI Otomasyonu ağacının içerik görünümüne eklenir.
IsControlElementProperty True Liste denetimi her zaman UI Otomasyonu ağacının denetim görünümüne eklenir.
IsKeyboardFocusableProperty True Kapsayıcı klavye girişini kabul edebilirse bu özellik değeri true olmalıdır.
HelpTextProperty Notlara bakın. Liste denetimleri için Yardım metni, kullanıcıdan neden seçenek listesinden seçim yapmasının istenmesini açıklamalıdır. Örneğin, "Bu listeden bir öğeyi seçin, monitörünüzün görüntü çözünürlüğünü ayarlar."

Gerekli UI Otomasyonu Denetim Desenleri ve Özellikleri

Aşağıdaki tabloda, liste 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/Desen Özelliği Destek/Değer Notlar
ISelectionProvider Zorunlu Liste denetim türünü destekleyen tüm denetimler, denetimde yer alan öğeler arasında bir seçim durumu korunduğunda uygulanmalıdır ISelectionProvider . Kapsayıcı içindeki öğeler seçilemiyorsa, Grup denetim türü kullanılmalıdır.
IsSelectionRequired -Sına bağ -lıdır Liste denetimleri her zaman bir öğenin seçilmesini gerektirmez.
CanSelectMultiple -Sına bağ -lıdır Liste denetimleri tek veya çoklu seçim kapsayıcıları olabilir.
IScrollProvider -Sına bağ -lıdır Kapsayıcıdaki öğeler kaydırılabilirse bu denetim düzenini uygulayın.
IGridProvider -Sına bağ -lıdır Öğe temelinde bir öğe üzerinde kılavuz gezintisi kullanılabilir olması gerektiğinde bu düzeni uygulayın.
IMultipleViewProvider -Sına bağ -lıdır Denetim kapsayıcıdaki öğelerin birden çok görünümünü destekleyebilirse bu denetim düzenini uygulayın.
ITableProvider Asla ITableProvider Liste denetim türü için hiçbir zaman desteklenmez. Denetimin bu denetim düzenini desteklemesi gerekiyorsa, denetim Data Grid denetim türünü temel almalıdır.

Gerekli UI Otomasyonu Olayları

Aşağıdaki tabloda, tüm liste denetimleri tarafından desteklenmesi gereken UI Otomasyonu olayları listelenmektedir. Olaylar hakkında daha fazla bilgi için bkz. UI Otomasyonu Olaylara Genel Bakış.

UI Otomasyonu Olayı Destek/Değer Notlar
InvalidatedEvent -Sına bağ -lıdır Hiçbiri
LayoutInvalidatedEvent -Sına bağ -lıdır Hiçbiri
BoundingRectangleProperty property-changed olayı. Zorunlu Hiçbiri
IsOffscreenProperty property-changed olayı. Zorunlu Hiçbiri
IsEnabledProperty property-changed olayı. Zorunlu Hiçbiri
CurrentViewProperty property-changed olayı. -Sına bağ -lıdır Hiçbiri
HorizontallyScrollableProperty property-changed olayı. -Sına bağ -lıdır Hiçbiri
HorizontalScrollPercentProperty property-changed olayı. -Sına bağ -lıdır Hiçbiri
HorizontalViewSizeProperty property-changed olayı. -Sına bağ -lıdır Hiçbiri
VerticalScrollPercentProperty property-changed olayı. -Sına bağ -lıdır Hiçbiri
VerticallyScrollableProperty property-changed olayı. -Sına bağ -lıdır Hiçbiri
VerticalViewSizeProperty property-changed olayı. -Sına bağ -lıdır Hiçbiri
AutomationFocusChangedEvent Zorunlu Hiçbiri
StructureChangedEvent Zorunlu Hiçbiri

Ayrıca bkz.