码迷,mamicode.com
首页 > Windows程序 > 详细

深入浅出WPF-笔记(2015.04.04)

时间:2015-04-05 06:45:13      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:wpf template

     Style是一组<Setter>,也就是一组属性设置器。

    ·使用Style时,如果Value的值比较简单,那就直接用Attribute值来表示,如果Value值不能用一个简单地字符串描述就需要使用XAML的属性对象语法。

    ControlTemplate最终将被应用到一个控件上,称这个控件为模板目标控件或模板化控件(Templated Control),ControlTemplate里的控件可以使用TemplateBinding将自己的属性值关联在目标控件的某个属性上,必要的时候还可以田间Converter.

      WPF的UI元素可以看作两棵树--LogicalTree和VisualTree,这两棵树的交点就是ControlTempalte。如果把界面上的控件元素看作是一个结点,那元素们构成的就是LogicalTree,如果把控件内部由ControlTemplate生成的控件也算上,那构成的就是VisualTree。换句话说,在LogicalTree上导航不会进入空间内部,而在VisualTree上导航则可检索到控件内部由ControlTemplate生成的子级控件。

    ItemsControl具有一个名为ItemsPanel的属性,其数据类型为ItemsPanelTempalte。ListBox的内容横向显示示例如下:

<Window x:Class="MyTestWpfApplication.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="RuntimePopup" Height="300" Width="300">
    <Grid Margin="6">
        <ListBox>
            <ListBox.ItemsPanel>
                <ItemsPanelTemplate>
                    <StackPanel Orientation="Horizontal"/>
                </ItemsPanelTemplate>
            </ListBox.ItemsPanel>
            <TextBlock Text="Allan"/>
            <TextBlock Text="Kevin"/>
            <TextBlock Text="Drew"/>
            <TextBlock Text="Timothy"/>
        </ListBox>
    </Grid>
</Window>

    凡是Template,最终都是要作用在控件上的,这个控件就是Tempalte的目标控件,也叫模板化控件(Templated Control)。

    决定控件外观的是ControlTempalte,决定数据外观的是DataTemplate,它们正是Control类的Template和ContentTemplate两个属性的值。

本文出自 “墨池小样儿” 博客,请务必保留此出处http://306702895.blog.51cto.com/8366753/1629002

深入浅出WPF-笔记(2015.04.04)

标签:wpf template

原文地址:http://306702895.blog.51cto.com/8366753/1629002

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!