Как извлечь шаблон управления по умолчанию в Visual Studio?
Мне интересно, как я могу извлечь (получить копию) шаблона по умолчанию данного элемента управления с помощью Visual Studio. Я знаю, что это можно сделать с помощью Expression Blend (щелкните правой кнопкой мыши элемент управления, «Изменить шаблон» -> «Редактировать копию …»), который затем копирует шаблон управления по умолчанию в моем Xaml. Но можно ли это сделать с Visual Studio?
- Этот тип CollectionView не поддерживает изменения в SourceCollection из streamа, отличного от streamа Dispatcher
- GridView с двумя столбцами, шириной заливки
- Связывание Datagrid в WPF
- Связывание видимости DataGridTextColumn
- Почему избежать кода в шаблоне MVVM WPF?
- WPF Binding - значение по умолчанию для пустой строки
- Как реализовать навигационную кнопку в общих ресурсах приложений?
- Как установить событие MouseOver / триггер для границы в XAML?
2015 с четкими инструкциями
В Visual Studio 2013 вы можете получить контрольную ControlTemplate
по умолчанию за несколько простых шагов.
-
В дизайнере WPF выберите соответствующий элемент управления или поместите курсор мыши на соответствующий элемент управления в XAML.
-
Нажмите F4, чтобы открыть окно свойств.
-
Откройте категорию « Разное », чтобы найти свойство « Шаблон» , или введите « Шаблон» в поле поиска в верхней части windows.
-
Нажмите на маленький квадрат справа от поля « Шаблон» и выберите « Преобразовать в новый ресурс …» :
- В диалоговом окне всплывающего windows назовите новый
ControlTemplate
который нужно добавить, и выберите, где вы хотите его определить:
- Нажмите кнопку OK .
Из Visual studio – щелкните правой кнопкой мыши элемент управления, выберите свойства,
В окне свойств найдите свойство шаблона и щелкните его правой кнопкой мыши, выберите «Извлечь значение в ресурс»
Это создаст копию шаблона в XAML для вас.
Чтобы обновить этот вопрос, в VS 11 дизайнер XAML позволяет вам делать это так же, как Expression Blend.
Насколько я знаю, это невозможно. Однако вы можете использовать Show Me The Template для просмотра шаблона по умолчанию для данного элемента управления.
Одно дело иметь в виду: если у вас уже есть определенный стиль, который нацелен на данный элемент управления, все вышеперечисленные параметры будут отключены. В моем файле App.xaml у меня был следующий бит кода:
Я вытягивал свои волосы, пытаясь понять, почему опции «изменить копию …» и «преобразовать в новый ресурс …», описанные в других ответах, были отключены для моей кнопки (которая была определена в совершенно другом файле ). Я прокомментировал приведенный выше код стиля для Button, и внезапно оба варианта больше не были отключены. Мораль истории: VS не создаст стиль, содержащий копию шаблона для вас, если стиль уже существует для этого элемента в любом месте вашего кода.