AccessibleObject.Navigate(AccessibleNavigation) Yöntem

Tanım

Başka bir erişilebilir nesneye gider.

C#
public virtual System.Windows.Forms.AccessibleObject Navigate (System.Windows.Forms.AccessibleNavigation navdir);
C#
public virtual System.Windows.Forms.AccessibleObject? Navigate (System.Windows.Forms.AccessibleNavigation navdir);

Parametreler

navdir
AccessibleNavigation

Değerlerden AccessibleNavigation biri.

Döndürülenler

AccessibleObject

AccessibleObject Değerlerden birini AccessibleNavigation temsil eden bir.

Özel durumlar

Gezinti girişimi başarısız oluyor.

Örnekler

Aşağıdaki örnek, erişilebilir bilgileri kullanıma açmak için ve Control.ControlAccessibleObject sınıflarını kullanarak erişilebilirliği algılayan bir grafik denetiminin oluşturulmasını AccessibleObject gösterir. Denetim, bir göstergeyle birlikte iki eğri çizer. ChartControlAccessibleObject sınıfından ControlAccessibleObjecttüretilen sınıfı, grafik denetimi için özel erişilebilir bilgiler sağlamak üzere yönteminde CreateAccessibilityInstance kullanılır. Grafik göstergesi gerçek Control tabanlı bir denetim olmadığından, bunun yerine grafik denetimi tarafından çizildiğinden, herhangi bir yerleşik erişilebilir bilgiye sahip değildir. Bu nedenle sınıfı, göstergenin ChartControlAccessibleObject GetChild her parçası için erişilebilir bilgileri temsil eden öğesini döndürmek CurveLegendAccessibleObject için yöntemini geçersiz kılar. Erişilebilir durumdaki bir uygulama bu denetimi kullandığında, denetim gerekli erişilebilir bilgileri sağlayabilir.

Bu kod, yöntemini geçersiz kılmayı Navigate gösterir. Kod örneğinin AccessibleObject tamamı için sınıfa genel bakış bölümüne bakın.

C#
// Inner class CurveLegendAccessibleObject represents accessible information 
// associated with the CurveLegend object.
public class CurveLegendAccessibleObject : AccessibleObject
{
    private CurveLegend curveLegend;

    public CurveLegendAccessibleObject(CurveLegend curveLegend) : base() 
    {
        this.curveLegend = curveLegend;                    
    }                

    // Private property that helps get the reference to the parent ChartControl.
    private ChartControlAccessibleObject ChartControl
    {   
        get {
            return Parent as ChartControlAccessibleObject;
        }
    }

    // Internal helper function that returns the ID for this CurveLegend.
    internal int ID
    {
        get {
            for(int i = 0; i < ChartControl.GetChildCount(); i++) {
                if (ChartControl.GetChild(i) == this) {
                    return i;
                }
            }
            return -1;
        }
    }

    // Gets the Bounds for the CurveLegend. This is used by accessibility programs.
    public override Rectangle Bounds
    {
        get {                        
            // The bounds is in screen coordinates.
            Point loc = curveLegend.Location;
            return new Rectangle(curveLegend.chart.PointToScreen(loc), curveLegend.Size);
        }
    }

    // Gets or sets the Name for the CurveLegend. This is used by accessibility programs.
    public override string Name
    {
        get {
            return curveLegend.Name;
        }
        set {
            curveLegend.Name = value;                        
        }
    }

    // Gets the Curve Legend Parent's Accessible object.
    // This is used by accessibility programs.
    public override AccessibleObject Parent
    {
        get {
            return curveLegend.chart.AccessibilityObject;
        }
    }

    // Gets the role for the CurveLegend. This is used by accessibility programs.
    public override AccessibleRole Role 
    {
        get {
            return AccessibleRole.StaticText;
        }
    }

    // Gets the state based on the selection for the CurveLegend. 
    // This is used by accessibility programs.
    public override AccessibleStates State 
    {
        get {
            AccessibleStates state = AccessibleStates.Selectable;
            if (curveLegend.Selected) 
            {
                state |= AccessibleStates.Selected;
            }
            return state;
        }
    }

    // Navigates through siblings of this CurveLegend. This is used by accessibility programs.
    public override AccessibleObject Navigate(AccessibleNavigation navdir) 
    {
        // Uses the internal NavigateFromChild helper function that exists
        // on ChartControlAccessibleObject.
        return ChartControl.NavigateFromChild(this, navdir);
    }

    // Selects or unselects this CurveLegend. This is used by accessibility programs.
    public override void Select(AccessibleSelection selection) 
    {
        // Uses the internal SelectChild helper function that exists
        // on ChartControlAccessibleObject.
        ChartControl.SelectChild(this, selection);
    }
}

Açıklamalar

Hem uzamsal hem de mantıksal gezinti her zaman kapsayıcı içindeki kullanıcı arabirimi öğeleriyle sınırlıdır. Uzamsal gezinti ile istemciler yalnızca başlangıç nesnesinin eşdüzeyine gidebilir. Mantıksal gezinti ile kullanılan gezinti bayrağına bağlı olarak, istemciler bir alt öğeye veya başlangıç nesnesinin eşdüzey öğesine gidebilir. Bu yöntem seçimi veya odağı değiştirmez. Odağı değiştirmek veya bir nesne seçmek için kullanın Select. Navigate yöntemi yalnızca tanımlı bir ekran konumuna sahip kullanıcı arabirimi öğelerini alır.

Devralanlara Notlar

Tüm görsel nesneler bu yöntemi desteklemelidir. Bir nesnenin durumu Invisiblevarsa, bu gizli nesneye gezinti başarısız olabilir. Menüler, menü öğeleri ve açılır menüler gibi sistem tanımlı bazı arabirim öğeleri görünür olmayan nesnelere gezinmeye olanak sağlar. Ancak, diğer sistem tanımlı kullanıcı arabirimi öğeleri bunu desteklemez. Mümkünse sunucular görünür olmayan nesnelere gezintiyi desteklemelidir, ancak bu destek gerekli değildir ve istemciler bunu beklememelidir.

Şunlara uygulanır

Ürün Sürümler
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
Windows Desktop 3.0, 3.1, 5, 6, 7