Aracılığıyla paylaş


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.

Graphic of a List View control with two data items

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.

Ayrıca bkz.