ContentElement.Focusable Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получение или установка значения, определяющего возможность получения фокуса элементом.
public:
property bool Focusable { bool get(); void set(bool value); };
public bool Focusable { get; set; }
member this.Focusable : bool with get, set
Public Property Focusable As Boolean
Значение свойства
Значение true
, если данный элемент может иметь фокус; в противном случае — значение false
. Значение по умолчанию — false
.
Реализации
Примеры
В следующем примере создается стиль, который делает Paragraph фокусируемым по умолчанию и дает ему визуальное поведение при получении фокуса.
<Style x:Key="FocusableParagraph" TargetType="{x:Type Paragraph}">
<Setter Property="Focusable" Value="true"/>
<Style.Triggers>
<Trigger Property="IsFocused" Value="True">
<Setter Property = "Background" Value="{StaticResource BlueGreenBrush}"/>
</Trigger>
</Style.Triggers>
</Style>
Комментарии
Только элемент с фокусом получает ввод клавиатуры.
Некоторые производные классы могут переопределять метаданные для этого свойства зависимостей, чтобы производный класс был сосредоточен по умолчанию.
При наследуемом или производных Hyperlink классах Hyperlink переопределяет метаданные для этого свойства зависимостей и переопределяет значение по умолчанию этого свойства true
.
Сведения о свойстве зависимостей
Поле идентификатора | FocusableProperty |
Metadata properties set to true |
Нет |
Примечания для наследутелей
Если вы наследуете от ContentElement, рассмотрите, хотите ли вы, чтобы элемент был фокусируемым, так как по умолчанию он не будет фокусироваться. Если вы хотите, чтобы элемент был фокусируемым, переопределите метаданные этого свойства в производном статическом конструкторе класса следующим образом:
FocusableProperty.OverrideMetadata(typeof(myElement), new UIPropertyMetadata(true));
FocusableProperty.OverrideMetadata(GetType(myElement), New UIPropertyMetadata(True))
где myElement
имя класса типа, для которого переопределяется значение метаданных.