WPF中获取系统本身自带的控件模板(XAML)

本文介绍了一种方法来获取WPF控件的默认模板XAML代码,这对于学习控件模板非常有用。通过提供的代码示例,可以轻松地查看和理解控件模板的结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       每个控件都有自己默认的模板,这是MS本身就编写好的,如果我们能够得到这些模板的XAML代码,那么它将是学习模板的最好的示例,要想获得某个控件ctrl的默认模板,请调用以下方法:

 1         string GetTemplateXamlCode(Control ctrl)
 2         {
 3 
 4             FrameworkTemplate template = ctrl.Template;
 5 
 6             string xaml = "";
 7 
 8             if (template != null)
 9             {
10 
11                 XmlWriterSettings settings = new XmlWriterSettings();
12                 settings.Indent = true;
13                 settings.IndentChars = new string(' ', 4);
14                 settings.NewLineOnAttributes = true;
15 
16                 StringBuilder strbuild = new StringBuilder();
17                 XmlWriter xmlwrite = XmlWriter.Create(strbuild, settings);
18 
19                 try
20                 {
21                     XamlWriter.Save(template, xmlwrite);
22                     xaml = strbuild.ToString();
23                 }
24                 catch (Exception exc)
25                 {
26                     xaml = exc.Message;
27                 }
28             }
29             else
30             {
31                 xaml = "no template";
32             }
33 
34             return xaml;
35         }

转载于:https://www.cnblogs.com/boxuan-Blog/p/7240924.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值