DataItem Denetim Türü iç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, DataItem denetim türü için Microsoft UI Otomasyonu desteği hakkında bilgi sağlar. UI Otomasyonu bir denetim türü, bir denetimin özelliğini kullanabilmesi için karşılaması ControlTypeProperty gereken bir koşul kümesidir. Koşullar, UI Otomasyonu ağaç yapısı, UI Otomasyonu özellik değerleri ve denetim desenleri için belirli yönergeleri içerir.
Kişiler listesindeki bir girdi, veri öğesi denetimine örnektir. Veri öğesi denetimi, son kullanıcının ilgilendiği bilgileri içerir. Daha zengin bilgiler içerdiğinden basit liste öğesinden daha karmaşıktır.
Aşağıdaki bölümlerde DataItem denetim türü için gerekli UI Otomasyonu ağaç yapısı, özellikleri, denetim desenleri ve olayları tanımlanmıştır. UI Otomasyonu gereksinimleri, Windows Presentation Foundation (WPF), Win32 veya Windows Forms olsun tüm veri öğesi denetimleri için geçerlidir.
Gerekli UI Otomasyonu Ağaç Yapısı
Aşağıdaki tabloda, veri öğesi denetimleriyle ilgili UI Otomasyonu ağacının denetim görünümü ve içerik görünümü gösterilir ve her görünümde nelerin içerilebileceği açıklanır. UI Otomasyonu ağacı hakkında daha fazla bilgi için bkz. UI Otomasyonu Ağaca Genel Bakış.
UI Otomasyonu Ağacı - Denetim Görünümü | UI Otomasyonu Ağacı - İçerik Görünümü |
---|---|
Dataıtem - Değişkenlik gösterir (0 veya daha fazla; hiyerarşide yapılandırılabilir) |
Dataıtem - Değişkenlik gösterir (0 veya daha fazla; hiyerarşide yapılandırılabilir) |
Veri kılavuzundaki veri öğesi öğesi, başka bir veri öğesi katmanı veya metin, görüntü veya düzenleme denetimleri gibi belirli kılavuz öğeleri de dahil olmak üzere çeşitli nesneleri barındırabilir. Veri öğesi öğesinin belirli bir nesne rolü varsa, öğe belirli bir denetim türü olarak gösterilmelidir; örneğin, kılavuzdaki seçilebilir bir veri öğesi için ListItem denetim türü.
Gerekli UI Otomasyonu Özellikleri
Aşağıdaki tabloda, değeri veya tanımı özellikle veri öğesi denetimleriyle ilgili olan özellikler listeleniyor. UI Otomasyonu özellikleri hakkında daha fazla bilgi için bkz. İstemciler için Özellikler UI Otomasyonu.
Özellik | 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. | Sınırlayıcı bir dikdörtgen varsa desteklenir. Sınırlayıcı dikdörtgenin içindeki her nokta tıklanabilir değilse ve özel isabet testi gerçekleştiriyorsanız, geçersiz kılın ve tıklanabilir bir nokta sağlayın. |
ControlTypeProperty | Dataıtem | Bu değer tüm ui çerçeveleri için aynıdır. |
IsContentElementProperty | True | Veri öğesi denetimi her zaman içerik olmalıdır. |
IsControlElementProperty | True | Veri öğesi denetimi her zaman bir denetim olmalıdır. |
IsKeyboardFocusableProperty | Notlara bakın. | Denetim klavye odağını alabiliyorsa bu özelliği desteklemesi gerekir. |
ItemStatusProperty | Notlara bakın. | Denetim dinamik olarak güncelleştirilen durumu içeriyorsa, yardımcı bir teknolojinin öğenin durumu değiştiğinde güncelleştirmeleri alabilmesi için bu özelliğin desteklenmesi gerekir. |
ItemTypeProperty | Notlara bakın. | Bu, öğenin temsil ettiği temel nesneyi son kullanıcıya ileten dize değeridir. Örnek olarak "Medya Dosyası" veya "Kişi" verilebilir. |
LabeledByProperty | Null |
Veri öğesi denetimlerinin statik metin etiketi yoktur. |
LocalizedControlTypeProperty | "veri öğesi" | DataItem denetim türüne karşılık gelen yerelleştirilmiş dize. |
NameProperty | Notlara bakın. | Veri öğesi denetimi her zaman kullanıcının öğe için en anlamsal tanımlayıcı olarak ilişkilendireceği öğeyle ilişkili bir birincil metin öğesi içerir. |
Gerekli UI Otomasyonu Denetim Desenleri
Aşağıdaki tabloda, tüm veri öğesi denetimleri tarafından desteklenmesi için gereken Microsoft 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 | Bilgileri göstermek ve gizlemek için veri öğesi genişletilebiliyor veya daraltılabiliyorsa Genişlet Daralt deseninin desteklenmesi gerekir. |
IGridItemProvider | -Sına bağ -lıdır | Uzamsal olarak öğeden öğeye gidilebilen bir kapsayıcıda veri öğeleri koleksiyonu kullanılabilir olduğunda veri öğeleri Kılavuz Öğesi desenini destekler. |
IScrollItemProvider | -Sına bağ -lıdır | Tüm veri öğeleri, veri kapsayıcılarında ekrana sığabilecek öğeden daha fazla öğe olduğunda Kaydırma Öğesi düzeniyle görünüme kaydırılma özelliğini destekler. |
ISelectionItemProvider | Yes | Öğenin ne zaman seçildiğini belirtmek için tüm veri öğelerinin Seçim Öğesi desenini desteklemesi gerekir. |
ITableItemProvider | -Sına bağ -lıdır | Veri öğesi bir Data Grid denetim türünde yer alırsa bu deseni destekler. |
IToggleProvider | -Sına bağ -lıdır | Veri öğesi döngüye alınabilecek bir durum içeriyorsa. |
IValueProvider | -Sına bağ -lıdır | Veri öğesinin birincil metni düzenlenebilirse Değer deseninin desteklenmesi gerekir. |
Büyük Listelerdeki Veri Öğeleriyle Çalışma
Büyük listeler genellikle performansa yardımcı olmak için kullanıcı arabirimi çerçeveleri içinde sanallaştırılmış verilerdir. Bu nedenle, bir UI Otomasyonu istemcisi tam ağacın içeriğini diğer öğe kapsayıcılarında olduğu gibi kazımak için UI Otomasyonu sorgu özelliğini kullanamaz. İstemci, veri öğesinden tam bilgi kümesine erişmeden önce öğeyi görünüme kaydırmalı (veya tüm değerli seçenekleri göstermek için denetimi genişletmelidir).
Veri öğesi için UI Otomasyonu öğesinde çağrı SetFocus
yapılırken, Microsoft Windows Gezgini olayı başarıyla döndürülecek ve odağın veri öğesi alt ağacı içinde Düzenle olarak ayarlanmasına neden olur.
Gerekli UI Otomasyonu Olayları
Aşağıdaki tabloda, tüm veri öğesi 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 | Notlar |
---|---|---|
AutomationFocusChangedEvent | Zorunlu | Hiçbiri |
BoundingRectangleProperty property-changed olayı. | Zorunlu | Hiçbiri |
IsEnabledProperty property-changed olayı. | Zorunlu | Hiçbiri |
IsOffscreenProperty property-changed olayı. | Zorunlu | Hiçbiri |
NameProperty property-changed olayı. | Zorunlu | Hiçbiri |
StructureChangedEvent | Zorunlu | Hiçbiri |
InvokedEvent | -Sına bağ -lıdır | Hiçbiri |
ExpandCollapseStateProperty property-changed olayı. | -Sına bağ -lıdır | Hiçbiri |
ElementAddedToSelectionEvent | Zorunlu | Hiçbiri |
ElementRemovedFromSelectionEvent | Zorunlu | Hiçbiri |
ElementSelectedEvent | Zorunlu | Hiçbiri |
ToggleStateProperty property-changed olayı. | -Sına bağ -lıdır | Hiçbiri |
ValueProperty property-changed olayı. | -Sına bağ -lıdır | Hiçbiri |
DataItem Denetim Türü Örneği
Aşağıdaki görüntüde, liste görünümü denetimindeki bir DataItem denetim türü ve sütunlar için zengin bilgiler için destek gösterilmektedir.
Veri öğesi denetimiyle ilgili UI Otomasyonu ağacının Denetim Görünümü ve İçerik Görünümü aşağıda görüntülenir. Her otomasyon öğesinin denetim desenleri parantez içinde gösterilir. "Contoso" Grubu da Data Grid konak denetiminin kılavuzunun bir parçasıdır.
UI Otomasyonu Ağacı - Denetim Görünümü | UI Otomasyonu Ağacı - İçerik Görünümü |
---|---|
- Grup "Contoso" (Tablo, Kılavuz) - DataItem "Hesaplar Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke) - Resim "Hesaplar Receivable.doc" - "Name" öğesini düzenleyin (TableItem, GridItem, Value "Accounts Receivable.doc") - Düzenleme "Değiştirme tarihi" (TableItem, GridItem, Value "25/8/2006 15:29 PM") - Edit "Size" (GridItem, TableItem, Value "11.0 KB) - DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke) - ... |
- Grup "Contoso" (Tablo, Kılavuz) - DataItem "Hesaplar Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke) - Resim "Hesaplar Receivable.doc" - "Name" öğesini düzenleyin (TableItem, GridItem, Value "Accounts Receivable.doc") - Düzenleme "Değiştirme tarihi" (TableItem, GridItem, Value "25/8/2006 15:29 PM") - Edit "Size" (GridItem, TableItem, Value "11.0 KB) - DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke) - ... |
Bir kılavuz seçilebilir öğelerin listesini temsil ederse, ilgili kullanıcı arabirimi öğeleri DataItem denetim türü yerine ListItem denetim türüyle gösterilebilir. Yukarıdaki örnekte, Grup ("Contoso") altındaki DataItem öğeleri ("Hesaplar Receivable.doc" ve "Hesaplar Payable.doc") ListItem denetim türleri olarak gösterilerek geliştirilebilir çünkü bu tür SelectionItem denetim desenini zaten desteklemektedir.