|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
using Windows.Win32.System.Variant;
namespace System.Windows.Forms;
public abstract partial class UpDownBase
{
internal partial class UpDownEdit
{
internal sealed class UpDownEditAccessibleObject : TextBoxBaseAccessibleObject
{
private readonly UpDownBase _parent;
public UpDownEditAccessibleObject(UpDownEdit owner, UpDownBase parent) : base(owner)
{
_parent = parent.OrThrowIfNull();
}
public override string? Name
{
get => _parent.AccessibilityObject.Name
?? _parent switch
{
NumericUpDown or DomainUpDown => SR.EditDefaultAccessibleName,
_ => null
};
set => _parent.AccessibilityObject.Name = value;
}
internal override bool CanGetNameInternal => false;
internal override bool CanSetNameInternal => _parent.AccessibilityObject.CanSetNameInternal;
internal override void SetNameInternal(BSTR value) => _parent.AccessibilityObject.SetNameInternal(value);
public override string? KeyboardShortcut => _parent.AccessibilityObject.KeyboardShortcut;
internal override bool CanGetKeyboardShortcutInternal => _parent.AccessibilityObject.CanGetKeyboardShortcutInternal;
internal override BSTR GetKeyboardShortcutInternal(VARIANT childID) => _parent.AccessibilityObject.GetKeyboardShortcutInternal(childID);
private protected override bool IsInternal => true;
}
}
}
|