(转)Silverlight控件关系理解
原文地址http://www.cnblogs.com/Joetao/articles/1899664.html
本篇学习了Silverlight中的控件继承关系,了解控件的继承关系对应我们操作控件,使用控件的样式,模板有很大的帮助!下面是我们常用控件继承和派生关系类图!这里只是列出了部分空控件关系!

关于继承关系的一点理解:
1)FrameworkTemplate类:创建元素的元素树(用于*.xaml文件中) 如下图:
(1)ControlTemplate类:定义控件的外观,这通常是多个元素的组合(用于*.xaml文件中)
(2)ItemsPanelTemplate类:ItemsControl 的项的布局创建的面板
(3)DataTemplate类: 描述数据对象的可视结构。

2)FrameworkElement:有Style属性,可以Style属性修改FrameworkElement样式。它的派生类具有Style属性.TextBlock除外
3)Control继承自FrameworkElement:Style属性,还有Template属性:如下图
Template属性:用于定义 Control 的外观的模板,对应于 ControlTemplate

(1) ContentControl:继承自Control,Style、Template、 ContentTemplate属性
ContentTemplate属性:获取或设置用于显示 ContentControl 内容的数据模板。对应于DataTemplate
Content 属性:可以是任何类型的对象,例如字符串、UIElement 或 DateTime。当 Content 设置为 UIElement 时,ContentControl 中将显示 UIElement。
(2)ItemsControl:继承自Control,具有 Style、Template、ItemTemplate、ItemsPanel属性
ItemTemplate属性:获取或设置用于显示每个项的 DataTemplate。
ItemsPanel属性:获取或设置模板,它定义了控制项的布局的面板。对应于ItemsPanelTemplate
(转)Silverlight控件关系理解的更多相关文章
- silverlight 控件样式动态绑定
<telerik:RadDiagram x:Name="diagram1" GraphSource="{Binding GraphSource, Mode=TwoW ...
- 浅谈对MJRefresh(上)下拉刷新控件的理解
MJRefresh GitHub地址:https://github.com/CoderMJLee/MJRefresh 利用业余时间研究了一下iOS的开发,发现OC特定的语法方式吸引了我,而且iOS开发 ...
- ListView控件的理解——自洽理论
写在前面的话: *标题中已经说明,是自洽理论.因此,有几率会有理解错误.但是,你不可以因此骂我. -我这个人经不起别人的批评,如果你批评我,我就,我就.... ## <第一行代码>读书笔记 ...
- silverlight控件阴影效果示例
<ScrollViewer MaxHeight="400" VerticalScrollBarVisibility="Auto" HorizontalSc ...
- silverlight 控件自定义样式 实现方法
1:在app.xaml中加入需实现的样式,如: <Application.Resources> <Style x:Key="NodeStyle" TargetTy ...
- APP常用控件学习理解
1.TextView 示例: layout_width指的是文本的所占宽度(不一定填充满),layout_height指的是文本所占高(不一定填充满),warp_coonent :包裹文本宽度 mat ...
- Silverlight控件——如何提升应用程序信任度与问题解决
从silverlight5开始,可以在项目设置中勾选“在浏览器内运行时需要提升的信任”来达到在浏览器内运行提权silverlight客户端的目的,在个特性很有用处. 可我使用这个功能时遇到了一个奇怪的 ...
- 【原创】有关Silverlight控件DataGrid的绑定数据后单元格单独复制的功能实现分析
前些日子,公司新需求需要对silverlight的datagrid进行局部任意单元格数据可复制,查阅了半天网络资料愣是没找到相关资料,开始还以为是silverlight的bug根部无法实现, 最后还是 ...
- SilverLight 控件ListBox中的SelectionChanged事件
出现的问题: ListBox 中给了它一个这样的事件SelectionChanged="NumBasket_SelectionChanged" 也就是单击某行就会触发的事件,要实现 ...
随机推荐
- vim--macro
例: qa some vim command q 这个宏只记录了vim命令到寄存器a中,执行这个宏可以用命令: @a 也可以加上执行次数: 10@a 执行10次 当你执行过一次@a之后,你可以用 @@ ...
- Xcode中给控件添加颜色时自动显示出颜色
在iOS开发中,给一些控件设置颜色的时候,设置完不能立马看到颜色.必须要运行程序之后才能看到设置的颜色,如果颜色有偏差再回代码改参数,然后再运行看颜色很是麻烦.令人高兴得是Xcode有很多功能强大插件 ...
- sql 将8位字符串转换成日期型
将8位字符串转换成日期型,方法如下: ),)
- Nginx配置upstream实现负载均衡
如果Nginx没有仅仅只能代理一台服务器的话,那它也不可能像今天这么火,Nginx可以配置代理多台服务器,当一台服务器宕机之后,仍能保持系统可用.具体配置过程如下: 1. 在http节点下,添加ups ...
- ST算法
作用:ST算法是用来求解给定区间RMQ的最值,本文以最小值为例 举例: 给出一数组A[0~5] = {5,4,6,10,1,12},则区间[2,5]之间的最值为1. 方法:ST算法分成两部分:离线预处 ...
- 升级到VS2012,reportViewer无法使用
最近公司的开发环境升级到VS2012,为了电脑能够快点,我重装系统,只装VS2012没有装VS2010.这个时候问题来了,原本用VS2010开发的项目用VS2012编译能通过,运行时包下图错: 为了解 ...
- 推荐一个winform 界面交互类库转
// Copyright (c) 2008 CodeToast.com and Nicholas Brookins //This code is free to use in any applicat ...
- Caffe入门与应用 by GX
深度学习几大工具:Theano(基于python),Torch,Caffe(用c++写的),Tensor flow,CNTK:caffe是比较流行的深度学习的框架 caffe特点:特别适合于新手,由于 ...
- ServletContext获取的方法
ServletContext 代表当前web应用 如何获取ServletContext对象 ServletConfig对象中维护了ServletContext对象的引用,可以通过以下方式获得 Ser ...
- .net 发展史
2002年年初 -Visual Studio 2002 & .Net Framework 1.0 2003年春天 -Visual Studio 2003 & .Net Framewor ...