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 NameProperty
gö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 |