Я пытаюсь настроить WPF 4.0 DataGrid и мне нужен список его шаблона элемента управления (также шаблон элемента управления для вложенного DataGridColumnHeadersPresenter - PART_ColumnHeadersPresenter). Я обнаружил , что эта ссылка предоставляет множество шаблонов элементов управления, но DataGrid отсутствует в списке! Есть ли место, где публикуется шаблон элемента управления для последней версии WPF 4.0 DataGrid. Я попытался получить его с помощью следующего кода, но он не дает мне вложенных шаблонов:
// Create an XmlWriter
StringBuilder sb = new StringBuilder();
XmlWriterSettings xmlSettings = new XmlWriterSettings
{ Indent = true, IndentChars = " ", NewLineOnAttributes = true };
XmlWriter writer = XmlWriter.Create(sb, xmlSettings);
// Write the control template
ControlTemplate template = controlToExtract.Template;
XamlWriter.Save(template, writer);
// Write results to display
controlTemplate.AppendText(sb.ToString());
Есть ссылка для загрузки тем WPF по умолчанию из Стили и шаблоны элементов управления на MSDN. Вы также можете использовать надстройку Reflector BamlViewer для чтения тем непосредственно из сборок.