2014-12-18 3 views
1

В некоторых вопросах мне нужно, чтобы все мои элементы управления были установлены как ReadOnly.WinRT - получить все элементы управления от codebehind

Все мои элементы управления имеют директиву x: Name и ее использование для установки для каждого элемента управления.

Ну, когда на странице появляется немного больше элементов управления, на мой взгляд, становится неэффективным, чтобы указать для каждого элемента управления, который является только для чтения.

Есть ли способ сказать в коде позади xmal, что все элементы управления являются readonly или atleast элементами управления, которые основаны на одном классе.

ответ

0

Визуальное дерево содержит все логические элементы, включая все визуальные элементы шаблона каждого элемента. Визуальное дерево отвечает за Распространение свойства IsEnabled, поэтому вы можете установить свойство IsEnabled вашей страницы в значение false и увидеть, что все дочерние элементы управления будут отключены. И не обязательно устанавливать это свойство для всех элементов управления на странице.

+0

Я пробовал ваше решение, но мне нужна не вся страница, которая будет отключена, так как у меня есть навигация. Мне нужны только элементы управления на странице. – MartinZPetrov

+0

@MartinZPetrov, поэтому я рекомендовал использовать стиль в ресурсе страницы, для которого целевой тип - это базовый класс, который вы хотите, и установите IsEnabled в false. –

+0

Вы также можете просто изменить IsEnabled панели, содержащей элементы управления (например, LayoutRoot или suche). Просто убедитесь, что у вас есть все элементы управления, которые вы хотите отключить на одной панели, и отключите их там. –

Смежные вопросы