在哪里可以找到 WPF DataGrid 或一般 WPF 控件的 XAML 模板? [关闭]

2023-11-23

我想修改控制模板DataGrid(4.0版本)但我不确定现有的模板是什么样的。有谁知道它是什么或者我在哪里可以找到它?

一般来说:对于某些WPF控件,如何查看相应控件模板的默认内容?


我建议进入 Blend(如果有的话)并提取模板。否则,您可以使用 XAMLWriter 获取 XAML。

This 不幸的是命名页面(我不认为这真的是“儿童的东西”,你是吗?)有一个做这两件事的例子。

万一该页面确实消失了(2009 年已经在后视镜中很远了):

// Get the template from the control
YourControlType ctl = new YourControlType();
ctl.UpdateDefaultStyle();
ControlTemplate template = ctl.Template;

// We want our xaml of be properly indented, ohterwise
// we would not be able to indent them.
XmlWriterSettings xmlSettings = new XmlWriterSettings();
xmlSettings.Indent = true;

// Make the string builder
StringBuilder sb = new StringBuilder();
XmlWriter writer = XmlWriter.Create(sb, xmlSettings);
XamlWriter.Save(template, writer);


// Now the sb.ToString() should give us the template

这一切都归功于沙夫卡特·艾哈迈德。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在哪里可以找到 WPF DataGrid 或一般 WPF 控件的 XAML 模板? [关闭] 的相关文章