Aracılığıyla paylaş


DataItem Denetim Türü

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

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, UI çerçevesinin/platformunun denetim türleri ve denetim desenleri için UI Otomasyonu desteğini tümleştirdiği tüm veri öğesi denetimleri için geçerlidir.

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

Tipik Ağaç Yapısı

Aşağıdaki tabloda, veri öğ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ü
  • DataItem
    • Değişkenlik (0 veya daha fazla; hiyerarşide yapılandırılabilir)
  • DataItem
    • Değişkenlik (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, ListItem kılavuzdaki seçilebilir bir veri öğesi için denetim türü.

İlgili Özellikler

Aşağıdaki tabloda, değeri veya tanımı dataitem denetim türüyle özellikle 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.
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 DataItem
UIA_IsContentElementPropertyId DOĞRU Veri öğesi denetimi her zaman içerik olmalıdır.
UIA_IsControlElementPropertyId DOĞRU Veri öğesi denetimi her zaman bir denetim olmalıdır.
UIA_IsKeyboardFocusablePropertyId Notlara bakın. Denetim klavye odağını alabiliyorsa bu özelliği desteklemesi gerekir.
UIA_ItemStatusPropertyId Notlara bakın. Denetim dinamik olarak güncelleştirilen bir durum içeriyorsa, yardımcı bir teknolojinin öğenin durumu değiştiğinde güncelleştirmeleri alabilmesi için bu özelliğin desteklenmesi gerekir.
UIA_ItemTypePropertyId Notlara bakın. Bu, öğenin temsil ettiği temel nesneyi son kullanıcıya ileten dize değeridir. Örnek olarak "Medya Dosyası" ve "Kişi" verilebilir.
UIA_LabeledByPropertyId Sıfır Veri öğesi denetimlerinin statik metin etiketi yoktur.
UIA_LocalizedControlTypePropertyId Notlara bakın. DataItem denetim türüne karşılık gelen yerelleştirilmiş dize. Varsayılan değer, en-US veya İngilizce (ABD) için "veri öğesi"dir.
UIA_NamePropertyId Notlara bakın. Veri öğesi denetimi her zaman kullanıcının öğenin tanımlayıcısı olarak tanıyacağı bir birincil metin öğesi içerir.

 

Gerekli Denetim Desenleri

Aşağıdaki tabloda, tüm veri öğ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 Bilgileri göstermek ve gizlemek için veri öğesi genişletilebiliyor veya daraltılabiliyorsa, ExpandCollapse denetim düzeni desteklenmelidir.
IGridItemProvider -Sına bağ -lıdır Veri öğeleri, uzamsal olarak öğeden öğeye gidilebilen bir kapsayıcıda veri öğeleri koleksiyonu kullanılabilir olduğunda griditem denetim desenini destekler.
IScrollItemProvider -Sına bağ -lıdır Tüm veri öğeleri, veri kapsayıcılarında ekrana sığabilecekten daha fazla öğe olduğunda ScrollItem denetim düzeniyle görünüme kaydırılma özelliğini destekler.
ISelectionItemProvider -Sına bağ -lıdır Veri öğelerini seçebilme özelliği içeriğe bağlıdır.
ITableItemProvider -Sına bağ -lıdır Veri öğesi, üst bilgi öğesi içeren bir DataGrid denetim türü içinde yer alırsa, TableItem denetim desenini desteklemelidir.
IToggleProvider -Sına bağ -lıdır Veri öğesi döngüye alınabilecek bir durum içeriyorsa Geçiş denetim desenini desteklemelidir.
IValueProvider -Sına bağ -lıdır Veri öğesinin birincil metni düzenlenebilirse, Değer denetim düzeni desteklenmelidir.

 

Büyük Listelerde DataItems ile Çalışma

Büyük listeler genellikle performansa yardımcı olmak için UI çerçeveleri içinde sanallaştırıldığından, UI Otomasyonu istemcisi tam ağacın içeriğini diğer öğe kapsayıcılarında olduğu gibi aramak 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 kullanılabilir tüm seçenekleri göstermek için denetimi genişletmelidir).

Veri öğesinin UI Otomasyonu öğesinde SetFocusçağrılırken, Microsoft Windows Gezgini başarıyla döndürülüyor ve odağın veri öğesi alt ağacı içindeki Düzenle denetimine ayarlanmasına neden oluyor.

Gerekli Olaylar

Aşağıdaki tabloda, veri öğ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_ItemStatusPropertyId özelliği değiştirilmiş olay. Denetim ItemStatus özelliğini destekliyorsa bu olayı desteklemesi gerekir.
özelliği değiştirilmiş olayı UIA_NamePropertyId.
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.
UIA_ValueValuePropertyId özelliği değiştirilmiş olay. Denetim Değer denetim desenini destekliyorsa, bu olayı desteklemesi gerekir.

 

DataItem Denetim Türü Örneği

Aşağıdaki görüntüde, liste görünümü denetimindeki DataItem denetim türü gösterilmektedir.

dataitem denetim türü

Veri öğesi denetimiyle ilgili UI Otomasyonu ağacının denetim görünümü ve iç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 veri kılavuzu ana bilgisayar denetiminin kılavuzunun bir parçasıdır. Daha üst düzey bir kılavuz yapısı örneği için bkz. DataGrid Denetim Türü.

UI Otomasyon Ağacı - Denetim Görünümü UI Otomasyon Ağacı - İçerik Görünümü
  • Grup "Contoso" (Tablo, Kılavuz)
    • DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • Görüntü "Hesaplar Receivable.doc"
      • "Name" (TableItem, GridItem, Value "Accounts Receivable.doc") düzenleme
      • Düzenleme "Değiştirme tarihi" (TableItem, GridItem, Value "25/8/2006 15:29 PM")
      • "Boyut" düzenleme (GridItem, TableItem, Value "11.0 KB")
    • DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • ...
  • Grup "Contoso" (Tablo, Kılavuz)
    • DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • Görüntü "Hesaplar Receivable.doc"
      • "Name" (TableItem, GridItem, Value "Accounts Receivable.doc") düzenleme
      • Düzenleme "Değiştirme tarihi" (TableItem, GridItem, Value "25/8/2006 15:29 PM")
      • "Boyut" düzenleme (GridItem, TableItem, Value "11.0 KB")
    • DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • ...

 

Bir kılavuz seçilebilir öğelerin listesini temsil ederse, ilgili seçilebilir kullanıcı arabirimi öğeleri DataItem denetim türü yerine ListItem denetim türüyle gösterilebilir. Yukarıdaki örnekte, DataItem öğeleri ("Hesaplar Receivable.doc" ve "Hesaplar Payable.doc") Grup ("Contoso") altında ListItem denetim türleri olarak gösterilerek geliştirilebilir çünkü bu tür zaten SelectionItem denetim desenini destekler.

kavramsal

UI Otomasyonu Denetim Türlerine Genel Bakış

UI Otomasyonuna Genel Bakış