技术开发 频道

开发Silverlight 2.0的自定义控件


【IT168技术文档】

  创建项目

  使用Visual Studio 2008新建一个Silerlight 类库项目。

  因为这是一个控件库,我们要添加程序集System.Windows.Controls的引用,这个程序集在 Silverlight 2.0 beta 1的版本号是1.0.0.0(不要问为什么:-) ),默认会并放在"C:\Program Files\Microsoft SDKs\Silverlight\v2.0\Libraries\Client\System.Windows.Controls.dll"。

  下一步是给我们的控件程序集加入XmlnsDefinitionAttribute。

  这个特性帮助XAML处理器找到和匹配Xml命名空间和CLR的命名空间,因此添加这个特性带下面的参数:

  [assembly: System.Windows.Markup.XmlnsDefinition ("http://schemas.eyedea.hu/silverlight/2008/xaml/presentation", "Eyedea.Controls")]

  创建控件类

  解决方案内找到Class1.cs文件,利用Visual Studio的重构功能,将Class1.cs重命名为MediaButton.cs。

  下一步我们添加我们XAML文件,里面包含这个控件库里面的控件要使用的缺省样式。

  让我们添加一个文本类型的项目到公秤里,命名为generic.xaml。

  选择generic.xaml文件并设置为嵌入式资源。通过删除Custom Tool属性值并设置Build Action为Resource。

  现在轮到编辑我们的主要对象:MediaButton.cs文件。打开这个文件,添加命令空间System.Windows.Controls的引用修改MediaButton类从系统内建的Button类继承。

  我们的MediaButton类看起来像这个样子:
using System.Windows.Controls; namespace Eyedea.Controls { public class MediaButton : Button { public MediaButton() { } } }
0
相关文章