为Silverlight 2创建自定义控件

本文将介绍以下内容:

WPF 控件模型

创建控件模板

派生控件

添加事件

本文使用以下技术:

Silverlight 2

本文基于 Silverlight 2 的 Beta 2 版本。 文中的所有信息均有可能发生变更。

目录

步骤 1:创建新的 Silverlight 项目

步 骤 2:从控件(或 ContentControl)派生

步骤 3:创建控件模板

步骤 4:创建默认控件 模板

步骤 5:添加模板绑定

步骤 6:使用 ContentPresenter 替换 TextBlock

步 骤 7:添加 Click 事件

步骤 8:添加可视状态

完成的控件

Silverlight 2 有别于 Silverlight 1.0 的众多功能之一是支持控件。Silverlight 2 以丰富且强大可靠的控件模型闻 名,该模型是平台中包括的控件和第三方控件包的基础。您也可以使用此控件模型构建自己的控件,但对 于不熟悉 Windows Presentation Foundation (WPF) 控件模型的开发人员来讲,第一次构建 Silverlight 自定义控件会令人生畏。撰写此专栏时,即在发布 Silverlight 2 Beta 2 之前,几乎没有 文档可供参考,而在 Web 中快速搜索出的少数几篇教程为我指明了方向。虽然我正在讨论此主题,但应 该提醒大家的是,我正在使用的 Beta 2 在其最终发布之前,可能会做进一步的更改。

在了解如 何为新平台编写自定义控件时,我经常先复制一些内置控件:按钮和列表框等等。这些控件可能表面看起 来简单,但他们总是揭示了控件模型的关键功能并可以测试人们对这些功能的掌握程度。另外,如果您无 法首先创建一个简单的按压按钮,则无法创建 super-duper-multicolor-multithreaded-all-in-one-do -it-all 小组件控件。

了解 Silverlight 2 自定义控件的最佳方法是一步一步一点一点地创建一 个 Silverlight 2 自定义控件。这样,您不仅能了解控件的各个组成部分,还能了解它们是如何组合到 一起的。以下教程描述了如何构建 SimpleButton 控件,该控件复制内置 Button 控件的外观和行为的重 要方面,并且可以从该控件直接看到控件开发的情况,即 Silverlight 样式。

时间: 2024-10-18 06:36:15

为Silverlight 2创建自定义控件的相关文章

使用Windows Javascript库创建自定义控件

如果您已经用Javascript开发过windows store app程序,那么您肯定使用过Windows Javascript 库(WinJS).这个库提供了一组CSS样式.Javascript控件以及工具, 可以帮助您快速地创建符合UX准则的windows store app. 这里工具是一组函数,您可以使用这组函数来创建自定义控件. 您可以使用任何您喜欢的模式或者库来编写JavaScript控件,WinJS提供的库函数仅仅是您的选择之一.使用WinJS库创建自定义控件的一个最大的好处是该

duilib开发基础:创建自定义控件的过程

转载请说明原出处,谢谢~·http://blog.csdn.net/zhuhongshu/article/details/45362751        用Duilib开发界面时,很多情况下库自带的控件不满足需求,就需要基于Duilib建立自定义控件(自绘新的控件,或者用来封装win32的子窗体,来显示视频.网页等).        在群里经常会有刚接触Duilib的朋友问题怎么建立自己的自定义控件,或者建立的控件无法正常创建出来.我简单写一篇博客,把创建自定义控件的完整过程,和一些注意事项说明

Silverlight 3 创建一个简单的Behavior

Silverlight 3 创建一个简单的Behavior 最近一直在研究Silverlight 3,并同时用3的新特性来做一些演练,期间学到了不少新东西该倒了总结一下的时候了. 在开发一个demo的过程中我采用了MVVM的开发模式,这个模式能很方便的直接使用blend来做数据的绑定,但是对一些Event.事件的触发来实现相对应的动画效果就比较复杂,刚开始一直想用数据绑定的方式来绑定Event,最终发现绑定按钮的点击事件比较方便,但是绑定别的比如MouseEnter.MouseMove等的事件就

Silverlight项目中"自定义控件开发/Style"学习笔记

本文不涉及高深的设计模式(比如mvc,mvvm之类),也没有太多的编程技巧,只是记录自己做为asp.net开发者学习silverlight中自定义控件开发的一些过程,高手请绕过.  先推荐一篇不错的文章http://www.cnblogs.com/carysun/articles/1259025.html 写得很全面,只不过图片讲解不够丰富,初学者可能有些感到跳跃性大了一些.  正文开始:  做过asp.net网站开发的都知道用户控件是一个很方便的功能,通常我们会把一些模块化的功能封装成用户控件

为Silverlight项目创建通用WebService数据访问

在使用Silverlight之前,我们创建了自己的webService做为通用数据访问.开发者传递一个Sql语句 ,即可得到一个DataSet,DataTable作为返回值.在Silverlight项目中,由于其对DataTable的限制,我 们不得不首先得到DataTable,而后在本地再创建Web service(WCF),对得到的DataTable进行转换.转换 为数组或者泛型集合以适应Silverlight的需要. 但是这样做难免有些繁琐,且开发者做出了很多费力的工作. 这里,我们对原来

Silverlight代码创建动画

代码中使用了 C# 3.0 语法 效果是一个红色矩形从右下角移动到左上角 仅仅是示例,演示如何在代码中动态创建动画 MainPage.xaml <UserControl x:Class="Hongcing.Silverlight.Create_And_Run_Animation" xmlns="http://schemas. microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://sch

asp.net Silverlight 应用创建基础篇

s2010强大快捷的支持真是让人惊喜.自定义开始页,多显示器支持...这些太多,我就不一一说了,谁用谁知道. vs2010集成了Silverlight3,可以方便的开发Silverlight程序. 建立项目: 打开vs2010,新建项目,会看到很多选项,选择Silverlight   下面会创建silverlight托管程序,您可以选择 还可以选择Silverlight版本.   项目创建完成后,什么多不要做,直接Build.会发现项目文件夹多了ClientBin文件/SilverlightAp

一步一步学Silverlight :创建一个基本的Silverlight应用

概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, Ironpython,对JSON.Web Service.WCF以及Sockets的支持等一系列新的特性.<一步一步学Silverlight 2系列>文章带您快速进入Silverlight 2开发. 本文为系列第一篇创建一个基本的Silverlight 2应用,不能免俗,从最简单的Hello W

ASP.NET2.0服务器控件之创建自定义控件

asp.net|创建|服务器|控件 摘要 本文将详细讲解一个简单的自定义服务器控件的创建过程.通过这些内容,读者将了解利用Visual Studio 2005,创建和测试自定义服务器控件的基本方法. 注意:本文内容基于ASP.NET 2.0技术撰写,示例应用程序使用Visual Studio 2005进行开发. 创建一个简单的自定义服务器控件 创建自定义服务器控件的过程包括: (1)创建一个测试用Web站点应用程序: (2)为新建站点应用程序,新增一个Web控件库项目: (3)编写.编译和测试自