上讲我们介绍了DataTemplate,现在我们就介绍下ControlTemplate,可能后面大多在编码时候会出现一些英文,工作习惯,请见谅。

ControlTemplate: 控件的外观,也就是控件是什么样子

后面在我们这个项目中会大量用到这个东西,

现在我大概介绍一下你怎样去使用一个控件模板,首先你得定义一个控件模板,基本格式如下:

    <ControlTemplate x:Key="按钮控件模板名称">

      在这里就可以去定义你当前这个模板的具体样式,比如你定义一个按钮的样式如下

        <Grid>

           <Ellipse>

              <Ellipse .Style >

                <Style Target="Ellipse ">

                    <Setter Property="Fill" >

                     <Setter.Value>

                        <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">

                          <LinearGradientBrush.GradientStops>

                          <GradientStop Offset="0.0" Color="#fff" />

                          <GradientStop Offset="1.0" Color="Red" />

                        </LinearGradientBrush.GradientStops>

                       </LinearGradientBrush>

                     </Setter.Value>

                    </Setter>

                <Style>

              <Ellipse >

            </Ellipse>

           <ContentPresenter Margin="5" HorizontalAlignment="Center" VerticalAlignment="Center" /> 

        </Grid>  

    </ControlTemplate>

那你在使用的时候就可以这样

    <Button Width="200" Height="120" Margin="20" Template="{StaticResource 按钮控件模板名称}">OK</Button>

大概就会长这样,这个代码是我直接在这里写的,可能会有点问题,模式是这样的,谢谢。

补充下,在说到模板的时候我们会用到很多的style,就比如刚才那个Style是怎么回事估计新手会有点纳闷那啥玩意,那我在下一讲补充下讲下WPF 中 Style

最新文章

  1. sql查询重复记录并取对应最小值
  2. oracle 体系结构解析
  3. 【转载】synchronized 与 Lock 的那点事
  4. 用 EasyBCD 在 Win7/8 中硬盘安装 Ubuntu
  5. Spring(3.2.3) - Beans(10): 生命周期
  6. hadoop异常: 到目前为止解决的最牛逼的一个异常(java.io.IOException: Incompatible clusterIDs)
  7. 计算机语言的发展(the history of computer&#39;s language)
  8. Sequence one(hdu2610dfs+去重)
  9. mongoengine连接错误:“False is not a read preference”解决方法
  10. silverlight控件动画状态的过渡
  11. ubuntu 经常使用软件及环境
  12. Leetcode 解题报告
  13. html 7.28
  14. MYSQL-group_concat设置group_concat_max_len
  15. Android Studio 签名 安全图片
  16. 解决:org.xml.sax.SAXParseException: 元素类型 &quot;head&quot; 必须由匹配的结束标记 &quot;&lt;/head&gt;问题
  17. 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。
  18. 四则运算3+PSP
  19. Android按键添加和处理的方案
  20. oracle for update和for update nowait的区别 - 转

热门文章

  1. [原创] IIS7下顶级域名301跳转到WWW域名
  2. Android 使用NineOldAndroids实现绚丽的ListView左右滑动删除Item效果
  3. Hadoop的奇技淫巧
  4. Django中级篇(上)
  5. 第三方框架之SDWebImage
  6. MSP430F149学习之路——按键
  7. java 中byte[] 数组的合并
  8. struts2拦截器拦截成功后每次请求都出现拦截时的错误信息
  9. ButterKnife的简单使用
  10. LAMP+LNMP视频教程